XML 92 R90.htm IDEA: XBRL DOCUMENT v2.4.1.9
Equity - Schedule of Share Based Compensation Activity (Details) (USD $)
12 Months Ended
Dec. 31, 2014
Dec. 31, 2013
Dec. 31, 2012
Dec. 31, 2011
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number 718,143us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber 664,245us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber 788,748us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber 1,327,066us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number 548,180us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber 483,216us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber 574,439us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber  
Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number 708,941us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber      
Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Remaining Contractual Term 9 years 2 months 12 days      
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number 103,772us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber 98,285us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber 91,311us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber 196,076us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
$5.00 to $9.99 [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number 32,000us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A500To999Member
     
Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term 4 years 4 months 24 days      
Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number 32,000us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A500To999Member
     
Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term 4 years 4 months 24 days      
Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number 32,000us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A500To999Member
     
Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Remaining Contractual Term 4 years 4 months 24 days      
$10.00 to $14.99 [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number 66,665us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A1000To1499Member
     
Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term 5 years 4 months 24 days      
Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number 66,665us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A1000To1499Member
     
Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term 5 years 4 months 24 days      
Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number 66,665us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A1000To1499Member
     
Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Remaining Contractual Term 5 years 4 months 24 days      
$15.00 - $19.99 [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number 67,000us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A15001999Member
     
Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term 6 years 4 months 24 days      
Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number 67,000us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A15001999Member
     
Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term 6 years 4 months 24 days      
Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number 67,000us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A15001999Member
     
Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Remaining Contractual Term 6 years 4 months 24 days      
$20.00 to $24.99 [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number 127,703us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A2000To2499Member
     
Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term 4 years 10 months 24 days      
Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number 101,036us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A2000To2499Member
     
Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term 4 years 3 months 18 days      
Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number 125,295us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A2000To2499Member
     
Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Remaining Contractual Term 4 years 10 months 24 days      
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number 12,000us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A2000To2499Member
     
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Outstanding, Weighted Average Remaining Contractual Terms 0 years 2 months 12 days      
Share-Based Compensation Arrangement by Share-based payment award,Other than Options,Vested and Expected to Vest,Outstanding,Weighted Average Contractual Life Term 0 years 2 months 12 days      
$25.00 to $29.99 [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number 230,152us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A2500To2999Member
     
Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term 2 years 7 months 6 days      
Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number 228,152us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A2500To2999Member
     
Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term 2 years 6 months 0 days      
Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number 230,072us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A2500To2999Member
     
Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Remaining Contractual Term 2 years 7 months 6 days      
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number 0us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A2500To2999Member
     
$30.00 to $34.99 [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number 136,623us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A3000To3499Member
     
Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term 7 years 7 months 6 days      
Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number 53,327us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A3000To3499Member
     
Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term 6 years 2 months 12 days      
Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number 132,349us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A3000To3499Member
     
Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Remaining Contractual Term 7 years 7 months 6 days      
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number 90,223us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A3000To3499Member
     
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Outstanding, Weighted Average Remaining Contractual Terms 1 year 8 months 12 days      
Share-Based Compensation Arrangement by Share-based payment award,Other than Options,Vested and Expected to Vest,Outstanding,Weighted Average Contractual Life Term 1 year 8 months 12 days      
$35.00 to $39.99 [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number 58,000us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A35.00to39.99Member
     
Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term 9 years 2 months 12 days      
Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number 0us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A35.00to39.99Member
     
Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number 55,560us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A35.00to39.99Member
     
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number 1,549us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A35.00to39.99Member
     
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Outstanding, Weighted Average Remaining Contractual Terms 2 years 9 months 18 days      
Share-Based Compensation Arrangement by Share-based payment award,Other than Options,Vested and Expected to Vest,Outstanding,Weighted Average Contractual Life Term 2 years 9 months 18 days      
Expected to Vest [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number 97,659us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
/ us-gaap_AwardTypeAxis
= agm_ExpectedToVestMember
     
Expected to Vest [Member] | $20.00 to $24.99 [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number 11,160us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
/ us-gaap_AwardTypeAxis
= agm_ExpectedToVestMember
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A2000To2499Member
     
Expected to Vest [Member] | $25.00 to $29.99 [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number 0us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
/ us-gaap_AwardTypeAxis
= agm_ExpectedToVestMember
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A2500To2999Member
     
Expected to Vest [Member] | $30.00 to $34.99 [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number 85,012us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
/ us-gaap_AwardTypeAxis
= agm_ExpectedToVestMember
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A3000To3499Member
     
Expected to Vest [Member] | $35.00 to $39.99 [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number 1,487us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
/ us-gaap_AwardTypeAxis
= agm_ExpectedToVestMember
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A35.00to39.99Member
     
Minimum [Member] | $5.00 to $9.99 [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Exercisable Options, Weighted Average Exercise Price 5.00us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
/ us-gaap_RangeAxis
= us-gaap_MinimumMember
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A500To999Member
     
Minimum [Member] | $10.00 to $14.99 [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Exercisable Options, Weighted Average Exercise Price 10.00us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
/ us-gaap_RangeAxis
= us-gaap_MinimumMember
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A1000To1499Member
     
Minimum [Member] | $15.00 - $19.99 [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Exercisable Options, Weighted Average Exercise Price 15.00us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
/ us-gaap_RangeAxis
= us-gaap_MinimumMember
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A15001999Member
     
Minimum [Member] | $20.00 to $24.99 [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Exercisable Options, Weighted Average Exercise Price 20.00us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
/ us-gaap_RangeAxis
= us-gaap_MinimumMember
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A2000To2499Member
     
Minimum [Member] | $25.00 to $29.99 [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Exercisable Options, Weighted Average Exercise Price 25.00us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
/ us-gaap_RangeAxis
= us-gaap_MinimumMember
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A2500To2999Member
     
Minimum [Member] | $30.00 to $34.99 [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Exercisable Options, Weighted Average Exercise Price 30.00us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
/ us-gaap_RangeAxis
= us-gaap_MinimumMember
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A3000To3499Member
     
Minimum [Member] | $35.00 to $39.99 [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Exercisable Options, Weighted Average Exercise Price 35.00us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
/ us-gaap_RangeAxis
= us-gaap_MinimumMember
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A35.00to39.99Member
     
Maximum [Member] | $5.00 to $9.99 [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Exercisable Options, Weighted Average Exercise Price 9.99us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
/ us-gaap_RangeAxis
= us-gaap_MaximumMember
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A500To999Member
     
Maximum [Member] | $10.00 to $14.99 [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Exercisable Options, Weighted Average Exercise Price 14.99us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
/ us-gaap_RangeAxis
= us-gaap_MaximumMember
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A1000To1499Member
     
Maximum [Member] | $15.00 - $19.99 [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Exercisable Options, Weighted Average Exercise Price 19.99us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
/ us-gaap_RangeAxis
= us-gaap_MaximumMember
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A15001999Member
     
Maximum [Member] | $20.00 to $24.99 [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Exercisable Options, Weighted Average Exercise Price 24.99us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
/ us-gaap_RangeAxis
= us-gaap_MaximumMember
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A2000To2499Member
     
Maximum [Member] | $25.00 to $29.99 [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Exercisable Options, Weighted Average Exercise Price 29.99us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
/ us-gaap_RangeAxis
= us-gaap_MaximumMember
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A2500To2999Member
     
Maximum [Member] | $30.00 to $34.99 [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Exercisable Options, Weighted Average Exercise Price 34.99us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
/ us-gaap_RangeAxis
= us-gaap_MaximumMember
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A3000To3499Member
     
Maximum [Member] | $35.00 to $39.99 [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Exercisable Options, Weighted Average Exercise Price 39.99us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
/ us-gaap_RangeAxis
= us-gaap_MaximumMember
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= agm_A35.00to39.99Member