List of Impute Rules

4/26/2021 6:52:40 PM

Line Financial Statement Location Rule Code Rule (XBRL Formula XPath 2.0 Format) Rule (Controlled Natural Language Format) Commentary
1 Balance sheet BS-Impute-01 if (($Assets = 0) and ($NoncurrentAssets = 0) and not($Assets = $LiabilitiesAndEquity) and ($CurrentAssets = $LiabilitiesAndEquity)) then ($Assets = $CurrentAssets) else ($Assets = $Assets)
If Assets = 0 and NoncurrentAssets = 0 and Assets <> LiabilitiesAndEquity and CurrentAssets = LiabilitiesAndEquity Then
    Assets = CurrentAssets
End If
2 Balance sheet BS-Impute-02 if (($Assets = 0) and not($LiabilitiesAndEquity = 0) and ($CurrentAssets = $LiabilitiesAndEquity)) then ($Assets = $CurrentAssets) else ($Assets = $Assets)
If Assets = 0 and LiabilitiesAndEquity <> 0 and CurrentAssets = LiabilitiesAndEquity Then
    Assets = CurrentAssets
End If
3 Balance sheet BS-Impute-03 if (($Assets = 0) and ($NoncurrentAssets = 0) and not($LiabilitiesAndEquity = 0) and ($LiabilitiesAndEquity = $Liabilities + $Equity)) then ($Assets = $CurrentAssets) else ($Assets = $Assets)
If Assets = 0 and NoncurrentAssets = 0 and LiabilitiesAndEquity <> 0 and (LiabilitiesAndEquity = Liabilities + Equity) Then
    Assets = CurrentAssets
End If
4 Balance sheet BS-Impute-04 if ($NoncurrentAssets = 0 and not($Assets = 0) and not($CurrentAssets = 0)) then ($NoncurrentAssets = $Assets - $CurrentAssets) else ($NoncurrentAssets = $NoncurrentAssets)
If NoncurrentAssets = 0 and Assets <> 0 and CurrentAssets <> 0 Then
    NoncurrentAssets = Assets - CurrentAssets
End If
5 Balance sheet BS-Impute-05 if ($LiabilitiesAndEquity = 0 and not($Assets = 0)) then ($LiabilitiesAndEquity = $Assets) else ($LiabilitiesAndEquity = $LiabilitiesAndEquity)
If LiabilitiesAndEquity = 0 and Assets <> 0 Then
    LiabilitiesAndEquity = Assets
End If
6 Balance sheet BS-Impute-11 if ($Liabilities = 0 and not($Equity = 0) and not($LiabilitiesAndEquity = 0)) then ($Liabilities = $LiabilitiesAndEquity - $Equity) else ($Liabilities = $Liabilities)
If Liabilities = 0 and (Equity <> 0) Then
    Liabilities = LiabilitiesAndEquity - Equity
End If
If Liabilities is not reported but Equity is reported and LiabilitiesAndEquity is reported; THEN compute Liabilities as being LiabilitiesAndEquity less Equity.
7 Balance sheet BS-Impute-12 if ($NoncurrentLiabilities = 0 and not($Liabilities = 0) and not($CurrentLiabilities = 0)) then ($NoncurrentLiabilities = $Liabilities - $CurrentLiabilities) else ($NoncurrentLiabilities = $NoncurrentLiabilities)
If NoncurrentLiabilities = 0 and Liabilities <> 0 and CurrentLiabilities <> 0 Then
    NoncurrentLiabilities = Liabilities - CurrentLiabilities
End If
If NoncurrentLiabilities is not reported but Liabilities is reported and CurrentLiabilities is reported; THEN compute NoncurrentLiabilities as Liabilities less CurrentLiabilities.
8 Balance sheet BS-Impute-13 if ($Liabilities = 0 and not($CurrentLiabilities = 0) and $NoncurrentLiabilities = 0) then ($Liabilities = $CurrentLiabilities) else ($Liabilities = $Liabilities)
If Liabilities = 0 and CurrentLiabilities <> 0 and NoncurrentLiabilities = 0 Then
    Liabilities = CurrentLiabilities
End If
9 Balance sheet BS-Impute-14 if ($Liabilities = 0 and not($CurrentLiabilities = 0) and not($NoncurrentLiabilities = 0)) then ($Liabilities = $CurrentLiabilities + $NoncurrentLiabilities) else ($Liabilities = $Liabilities)
If Liabilities = 0 and CurrentLiabilities <> 0 and NoncurrentLiabilities <> 0 Then
    Liabilities = CurrentLiabilities + NoncurrentLiabilities
End If
10 Balance sheet BS-Impute-16 if ($CurrentLiabilities = 0 and $NoncurrentLiabilities = 0 and not($Liabilities = 0)) then ($CurrentLiabilities = $Liabilities) else ($CurrentLiabilities = $CurrentLiabilities)
If CurrentLiabilities = 0 and NoncurrentLiabilities = 0 and Liabilities <> 0 Then
    CurrentLiabilities = Liabilities
End If
11 Balance sheet BS-Impute-18 if ($CurrentAssets = 0 and not($Assets = 0) and not($LiabilitiesAndEquity = 0) and $LiabilitiesAndEquity = $Assets) then ($CurrentAssets = $Assets) else ($CurrentAssets = $CurrentAssets)
If CurrentAssets = 0 and Assets <> 0 and LiabilitiesAndEquity <> 0 and LiabilitiesAndEquity = Assets Then
    CurrentAssets = Assets
End If
12 Balance sheet BS-Impute-56 if ($NoncurrentLiabilities = 0 and not($CurrentLiabilities = 0) and not($Liabilities = 0)) then ($NoncurrentLiabilities = $Liabilities - $CurrentLiabilities) else ($NoncurrentLiabilities = $NoncurrentLiabilities)
If NoncurrentLiabilities = 0 and CurrentLiabilities <> 0 and Liabilities <> 0 Then
    NoncurrentLiabilities = Liabilities - CurrentLiabilities
End If
13 Cash flow statement CF-Impute-13 if ($NetCashFlowFromInvestingActivities = 0 and not($NetCashFlowFromOperatingActivities = 0) and not($NetCashFlowFromFinancingActivities = 0) and not($NetCashFlow - ($NetCashFlowFromOperatingActivities + $NetCashFlowFromInvestingActivities + $NetCashFlowFromFinancingActivities) = 0)) then ($NetCashFlowFromInvestingActivities = $NetCashFlow - ($NetCashFlowFromOperatingActivities + $NetCashFlowFromFinancingActivities)) else ($NetCashFlowFromInvestingActivities =$NetCashFlowFromInvestingActivities)
If NetCashFlowFromInvestingActivities = 0 and NetCashFlowFromOperatingActivities <> 0 and NetCashFlowFromFinancingActivities <> 0 and (NetCashFlow - (NetCashFlowFromOperatingActivities + NetCashFlowFromInvestingActivities + NetCashFlowFromFinancingActivities) <> 0) Then
    NetCashFlowFromInvestingActivities = NetCashFlow - (NetCashFlowFromOperatingActivities + NetCashFlowFromFinancingActivities)
End If
14 Cash flow statement CF-Impute-14 if ($NetCashFlowFromFinancingActivities = 0 and not($NetCashFlowFromOperatingActivities = 0) and not($NetCashFlowFromInvestingActivities = 0) and not ($NetCashFlow - ($NetCashFlowFromOperatingActivities + $NetCashFlowFromInvestingActivities + $NetCashFlowFromFinancingActivities) = 0)) then ($NetCashFlowFromFinancingActivities = $NetCashFlow - ($NetCashFlowFromOperatingActivities + $NetCashFlowFromInvestingActivities)) else ($NetCashFlowFromFinancingActivities =$NetCashFlowFromFinancingActivities)
If NetCashFlowFromFinancingActivities = 0 and NetCashFlowFromOperatingActivities <> 0 and NetCashFlowFromInvestingActivities <> 0 and (NetCashFlow - (NetCashFlowFromOperatingActivities + NetCashFlowFromInvestingActivities + NetCashFlowFromFinancingActivities) <> 0) Then
    NetCashFlowFromFinancingActivities = NetCashFlow - (NetCashFlowFromOperatingActivities + NetCashFlowFromInvestingActivities)
End If
15 Cash flow statement CF-Impute-20 if ($NetCashFlow = 0 and (not($NetCashFlowFromOperatingActivities = 0) or not($NetCashFlowFromInvestingActivities = 0) or not($NetCashFlowFromFinancingActivities = 0))) then ($NetCashFlow = $NetCashFlowFromOperatingActivities + $NetCashFlowFromInvestingActivities + $NetCashFlowFromFinancingActivities) else ($NetCashFlow = $NetCashFlow)
If NetCashFlow = 0 and (NetCashFlowFromOperatingActivities <> 0 or NetCashFlowFromInvestingActivities <> 0 or NetCashFlowFromFinancingActivities <> 0) Then
    NetCashFlow = NetCashFlowFromOperatingActivities + NetCashFlowFromInvestingActivities + NetCashFlowFromFinancingActivities
End If
16 Cash flow statement CF-Impute-20B if ($NetCashFlow = 0 and (not($NetCashFlowFromOperatingActivities = 0) or not($NetCashFlowFromInvestingActivities = 0) or not($NetCashFlowFromFinancingActivities = 0))) then ($NetCashFlow = $NetCashFlowFromOperatingActivities + $NetCashFlowFromInvestingActivities + $NetCashFlowFromFinancingActivities) else ($NetCashFlow = $NetCashFlow)
If NetCashFlow = 0 and (NetCashFlowFromOperatingActivities <> 0 or NetCashFlowFromInvestingActivities <> 0 or NetCashFlowFromFinancingActivities <> 0) Then
    NetCashFlow = NetCashFlowFromOperatingActivities + NetCashFlowFromInvestingActivities + NetCashFlowFromFinancingActivities
End If
No exchange gains, CF alternative
17 Income statement IS-Impute-04 if ($IncomeLossFromContinuingOperationsAfterTax = 0 and not($IncomeLossFromContinuingOperationsBeforeTax = 0)) then ($IncomeLossFromContinuingOperationsAfterTax = $IncomeLossFromContinuingOperationsBeforeTax - $IncomeTaxExpenseBenefit) else ($IncomeLossFromContinuingOperationsAfterTax = $IncomeLossFromContinuingOperationsAfterTax)
If IncomeLossFromContinuingOperationsAfterTax = 0 and IncomeLossFromContinuingOperationsBeforeTax <> 0 Then
    IncomeLossFromContinuingOperationsAfterTax = IncomeLossFromContinuingOperationsBeforeTax - IncomeTaxExpenseBenefit
End If
18 Income statement IS-Impute-08 if ($IncomeLossFromContinuingOperationsBeforeTax = 0 and not($IncomeLossFromContinuingOperationsAfterTax = 0) and $IncomeTaxExpenseBenefit = 0) then ($IncomeLossFromContinuingOperationsBeforeTax = $IncomeLossFromContinuingOperationsAfterTax) else ($IncomeLossFromContinuingOperationsBeforeTax = $IncomeLossFromContinuingOperationsBeforeTax)
If IncomeLossFromContinuingOperationsBeforeTax = 0 and IncomeLossFromContinuingOperationsAfterTax <> 0 and IncomeTaxExpenseBenefit = 0 Then
    IncomeLossFromContinuingOperationsBeforeTax = IncomeLossFromContinuingOperationsAfterTax
End If
19 Income statement IS-Impute-16 if ($IncomeLossFromContinuingOperationsAfterTax = 0 and not($IncomeTaxExpenseBenefit = 0) and not($IncomeLossFromContinuingOperationsBeforeTax = 0)) then ($IncomeLossFromContinuingOperationsAfterTax = $IncomeLossFromContinuingOperationsBeforeTax - $IncomeTaxExpenseBenefit) else ($IncomeLossFromContinuingOperationsAfterTax = $IncomeLossFromContinuingOperationsAfterTax)
If IncomeLossFromContinuingOperationsAfterTax = 0 and IncomeTaxExpenseBenefit <> 0 and IncomeLossFromContinuingOperationsBeforeTax <> 0 Then
    IncomeLossFromContinuingOperationsAfterTax = IncomeLossFromContinuingOperationsBeforeTax - IncomeTaxExpenseBenefit
End If
20 Income statement IS-Impute-18 if ($IncomeLossFromContinuingOperationsBeforeTax = 0 and not($IncomeLossFromContinuingOperationsAfterTax = 0)) then ($IncomeLossFromContinuingOperationsBeforeTax = $IncomeLossFromContinuingOperationsAfterTax + $IncomeTaxExpenseBenefit) else ($IncomeLossFromContinuingOperationsBeforeTax = $IncomeLossFromContinuingOperationsBeforeTax)
If IncomeLossFromContinuingOperationsBeforeTax = 0 and IncomeLossFromContinuingOperationsAfterTax <> 0 Then
    IncomeLossFromContinuingOperationsBeforeTax = IncomeLossFromContinuingOperationsAfterTax + IncomeTaxExpenseBenefit
End If
This seems like a duplicate, check.
21 Income statement IS-Impute-21 if ($GrossProfit = 0 and not($Revenues = 0) and not($CostOfRevenue = 0)) then ($GrossProfit = $Revenues - $CostOfRevenue) else ($GrossProfit = $GrossProfit)
If GrossProfit = 0 and Revenues <> 0 and CostOfRevenue <> 0 Then
    GrossProfit = Revenues - CostOfRevenue
End If
22 Income statement IS-Impute-23 if ($CostOfRevenue = 0 and not($Revenues = 0) and not($GrossProfit = 0)) then ($CostOfRevenue = $Revenues - $GrossProfit) else ($CostOfRevenue = $CostOfRevenue)
If CostOfRevenue = 0 and Revenues <> 0 and GrossProfit <> 0 Then
    CostOfRevenue = Revenues - GrossProfit
End If