\n",
" \n",
" | 0 | \n",
" PREPIVOT | \n",
" Group | \n",
" | \n",
" PREPIVOT_BS_PREPIV | \n",
" | \n",
"
\n",
" \n",
" | 1 | \n",
" PREPIVOT | \n",
" Rule | \n",
" PrePivotDeduplicate | \n",
" PREPIVOT_BS_PREPIV_#1_DeDup | \n",
" Deduplicates the dataframe based on the columns ['adsh', 'coreg', 'report', 'ddate', 'qtrs', 'tag', 'version', 'value'] | \n",
"
\n",
" \n",
" | 2 | \n",
" PRE | \n",
" Group | \n",
" | \n",
" PRE_BS_PRE | \n",
" | \n",
"
\n",
" \n",
" | 3 | \n",
" PRE | \n",
" Rule | \n",
" PreSumUpCorrection | \n",
" PRE_BS_PRE_#1_Assets/AssetsNoncurrent | \n",
" Swaps the values between the tag 'Assets' and 'AssetsNoncurrent' if the following equation is True \"'AssetsNoncurrent' = 'Assets' + 'AssetsCurrent\" and 'AssetsCurrent' > 0 | \n",
"
\n",
" \n",
" | 4 | \n",
" PRE | \n",
" Rule | \n",
" PreSumUpCorrection | \n",
" PRE_BS_PRE_#2_Assets/AssetsCurrent | \n",
" Swaps the values between the tag 'Assets' and 'AssetsCurrent' if the following equation is True \"'AssetsCurrent' = 'Assets' + 'AssetsNoncurrent\" and 'AssetsNoncurrent' > 0 | \n",
"
\n",
" \n",
" | 5 | \n",
" MAIN | \n",
" Group | \n",
" | \n",
" MAIN_BS | \n",
" | \n",
"
\n",
" \n",
" | 6 | \n",
" MAIN | \n",
" Group | \n",
" | \n",
" MAIN_BS_#1_BR | \n",
" | \n",
"
\n",
" \n",
" | 7 | \n",
" MAIN | \n",
" Rule | \n",
" CopyTagRule | \n",
" MAIN_BS_#1_BR_#1_Assets<-AssetsNet | \n",
" Copies the values from AssetsNet to Assets if AssetsNet is not null and Assets is nan | \n",
"
\n",
" \n",
" | 8 | \n",
" MAIN | \n",
" Rule | \n",
" CopyTagRule | \n",
" MAIN_BS_#1_BR_#2_Cash<-CashAndCashEquivalentsAtCarryingValue | \n",
" Copies the values from CashAndCashEquivalentsAtCarryingValue to Cash if CashAndCashEquivalentsAtCarryingValue is not null and Cash is nan | \n",
"
\n",
" \n",
" | 9 | \n",
" MAIN | \n",
" Rule | \n",
" CopyTagRule | \n",
" MAIN_BS_#1_BR_#3_LiabilitiesAndEquity<-LiabilitiesAndStockholdersEquity | \n",
" Copies the values from LiabilitiesAndStockholdersEquity to LiabilitiesAndEquity if LiabilitiesAndStockholdersEquity is not null and LiabilitiesAndEquity is nan | \n",
"
\n",
" \n",
" | 10 | \n",
" MAIN | \n",
" Rule | \n",
" CopyTagRule | \n",
" MAIN_BS_#1_BR_#4_RetainedEarnings<-RetainedEarningsAccumulatedDeficit | \n",
" Copies the values from RetainedEarningsAccumulatedDeficit to RetainedEarnings if RetainedEarningsAccumulatedDeficit is not null and RetainedEarnings is nan | \n",
"
\n",
" \n",
" | 11 | \n",
" MAIN | \n",
" Group | \n",
" | \n",
" MAIN_BS_#2_EQ | \n",
" | \n",
"
\n",
" \n",
" | 12 | \n",
" MAIN | \n",
" Rule | \n",
" CopyTagRule | \n",
" MAIN_BS_#2_EQ_#1_HolderEquity<-StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest | \n",
" Copies the values from StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest to HolderEquity if StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest is not null and HolderEquity is nan | \n",
"
\n",
" \n",
" | 13 | \n",
" MAIN | \n",
" Rule | \n",
" CopyTagRule | \n",
" MAIN_BS_#2_EQ_#2_HolderEquity<-PartnersCapital | \n",
" Copies the values from PartnersCapital to HolderEquity if PartnersCapital is not null and HolderEquity is nan | \n",
"
\n",
" \n",
" | 14 | \n",
" MAIN | \n",
" Rule | \n",
" CopyTagRule | \n",
" MAIN_BS_#2_EQ_#3_HolderEquity<-StockholdersEquity | \n",
" Copies the values from StockholdersEquity to HolderEquity if StockholdersEquity is not null and HolderEquity is nan | \n",
"
\n",
" \n",
" | 15 | \n",
" MAIN | \n",
" Rule | \n",
" SumUpRule | \n",
" MAIN_BS_#2_EQ_#4_TemporaryEquity | \n",
" Sums up the availalbe values in the columns ['TemporaryEquityAggregateAmountOfRedemptionRequirement', 'TemporaryEquityCarryingAmountAttributableToParent', 'TemporaryEquityRedemptionAmountAttributableToParent', 'TemporaryEquityRedemptionAmountAttributableToNoncontrollingInterest'] into the column 'TemporaryEquity', if the column 'TemporaryEquity' is nan | \n",
"
\n",
" \n",
" | 16 | \n",
" MAIN | \n",
" Rule | \n",
" SumUpRule | \n",
" MAIN_BS_#2_EQ_#5_RedeemableEquity | \n",
" Sums up the availalbe values in the columns ['RedeemableNoncontrollingInterestEquityCarryingAmount', 'RedeemableNoncontrollingInterestEquityRedemptionAmount', 'RedeemableNoncontrollingInterestEquityOtherCarryingAmount', 'RedeemableNoncontrollingInterestEquityOtherRedemptionAmount', 'RedeemablePreferredStockEquityOtherCarryingAmount', 'RedeemablePreferredStockEquityOtherRedemptionAmount'] into the column 'RedeemableEquity', if the column 'RedeemableEquity' is nan | \n",
"
\n",
" \n",
" | 17 | \n",
" MAIN | \n",
" Rule | \n",
" SumUpRule | \n",
" MAIN_BS_#2_EQ_#6_Equity | \n",
" Sums up the availalbe values in the columns ['HolderEquity', 'TemporaryEquity', 'RedeemableEquity'] into the column 'Equity', if the column 'Equity' is nan | \n",
"
\n",
" \n",
" | 18 | \n",
" MAIN | \n",
" Group | \n",
" | \n",
" MAIN_BS_#3_SC | \n",
" | \n",
"
\n",
" \n",
" | 19 | \n",
" MAIN | \n",
" Rule | \n",
" MissingSumRule | \n",
" MAIN_BS_#3_SC_#1_Assets | \n",
" Sums up the values in the columns ['AssetsCurrent', 'AssetsNoncurrent'] into the column 'Assets', if the column 'Assets' is nan and if all columns ['AssetsCurrent', 'AssetsNoncurrent'] have a value | \n",
"
\n",
" \n",
" | 20 | \n",
" MAIN | \n",
" Rule | \n",
" MissingSummandRule | \n",
" MAIN_BS_#3_SC_#2_AssetsCurrent | \n",
" Calculates the value for the missing column 'AssetsCurrent' by subtracting the values of the columns '['AssetsNoncurrent']' from the column 'Assets' if all of the columns ['Assets', 'AssetsNoncurrent'] are set. | \n",
"
\n",
" \n",
" | 21 | \n",
" MAIN | \n",
" Rule | \n",
" MissingSummandRule | \n",
" MAIN_BS_#3_SC_#3_AssetsNoncurrent | \n",
" Calculates the value for the missing column 'AssetsNoncurrent' by subtracting the values of the columns '['AssetsCurrent']' from the column 'Assets' if all of the columns ['Assets', 'AssetsCurrent'] are set. | \n",
"
\n",
" \n",
" | 22 | \n",
" MAIN | \n",
" Rule | \n",
" MissingSumRule | \n",
" MAIN_BS_#3_SC_#4_Liabilities | \n",
" Sums up the values in the columns ['LiabilitiesCurrent', 'LiabilitiesNoncurrent'] into the column 'Liabilities', if the column 'Liabilities' is nan and if all columns ['LiabilitiesCurrent', 'LiabilitiesNoncurrent'] have a value | \n",
"
\n",
" \n",
" | 23 | \n",
" MAIN | \n",
" Rule | \n",
" MissingSummandRule | \n",
" MAIN_BS_#3_SC_#5_LiabilitiesCurrent | \n",
" Calculates the value for the missing column 'LiabilitiesCurrent' by subtracting the values of the columns '['LiabilitiesNoncurrent']' from the column 'Liabilities' if all of the columns ['Liabilities', 'LiabilitiesNoncurrent'] are set. | \n",
"
\n",
" \n",
" | 24 | \n",
" MAIN | \n",
" Rule | \n",
" MissingSummandRule | \n",
" MAIN_BS_#3_SC_#6_LiabilitiesNoncurrent | \n",
" Calculates the value for the missing column 'LiabilitiesNoncurrent' by subtracting the values of the columns '['LiabilitiesCurrent']' from the column 'Liabilities' if all of the columns ['Liabilities', 'LiabilitiesCurrent'] are set. | \n",
"
\n",
" \n",
" | 25 | \n",
" MAIN | \n",
" Rule | \n",
" MissingSumRule | \n",
" MAIN_BS_#3_SC_#7_Assets | \n",
" Sums up the values in the columns ['Liabilities', 'Equity'] into the column 'Assets', if the column 'Assets' is nan and if all columns ['Liabilities', 'Equity'] have a value | \n",
"
\n",
" \n",
" | 26 | \n",
" MAIN | \n",
" Rule | \n",
" MissingSummandRule | \n",
" MAIN_BS_#3_SC_#8_Liabilities | \n",
" Calculates the value for the missing column 'Liabilities' by subtracting the values of the columns '['Equity']' from the column 'Assets' if all of the columns ['Assets', 'Equity'] are set. | \n",
"
\n",
" \n",
" | 27 | \n",
" MAIN | \n",
" Rule | \n",
" MissingSummandRule | \n",
" MAIN_BS_#3_SC_#9_Equity | \n",
" Calculates the value for the missing column 'Equity' by subtracting the values of the columns '['Liabilities']' from the column 'Assets' if all of the columns ['Assets', 'Liabilities'] are set. | \n",
"
\n",
" \n",
" | 28 | \n",
" MAIN | \n",
" Rule | \n",
" MissingSumRule | \n",
" MAIN_BS_#3_SC_#10_LiabilitiesAndEquity | \n",
" Sums up the values in the columns ['Liabilities', 'Equity'] into the column 'LiabilitiesAndEquity', if the column 'LiabilitiesAndEquity' is nan and if all columns ['Liabilities', 'Equity'] have a value | \n",
"
\n",
" \n",
" | 29 | \n",
" MAIN | \n",
" Rule | \n",
" MissingSummandRule | \n",
" MAIN_BS_#3_SC_#11_Liabilities | \n",
" Calculates the value for the missing column 'Liabilities' by subtracting the values of the columns '['Equity']' from the column 'LiabilitiesAndEquity' if all of the columns ['LiabilitiesAndEquity', 'Equity'] are set. | \n",
"
\n",
" \n",
" | 30 | \n",
" MAIN | \n",
" Rule | \n",
" MissingSummandRule | \n",
" MAIN_BS_#3_SC_#12_Equity | \n",
" Calculates the value for the missing column 'Equity' by subtracting the values of the columns '['Liabilities']' from the column 'LiabilitiesAndEquity' if all of the columns ['LiabilitiesAndEquity', 'Liabilities'] are set. | \n",
"
\n",
" \n",
" | 31 | \n",
" MAIN | \n",
" Group | \n",
" | \n",
" MAIN_BS_#4_SU | \n",
" | \n",
"
\n",
" \n",
" | 32 | \n",
" MAIN | \n",
" Rule | \n",
" SumUpRule | \n",
" MAIN_BS_#4_SU_#1_Cash | \n",
" Sums up the availalbe values in the columns ['CashAndCashEquivalentsAtFairValue', 'CashAndDueFromBanks', 'CashCashEquivalentsAndFederalFundsSold', 'RestrictedCashAndCashEquivalentsAtCarryingValue', 'CashAndCashEquivalentsInForeignCurrencyAtCarryingValue'] into the column 'Cash', if the column 'Cash' is nan | \n",
"
\n",
" \n",
" | 33 | \n",
" MAIN | \n",
" Rule | \n",
" SumUpRule | \n",
" MAIN_BS_#4_SU_#2_RetainedEarnings | \n",
" Sums up the availalbe values in the columns ['RetainedEarningsUnappropriated', 'RetainedEarningsAppropriated'] into the column 'RetainedEarnings', if the column 'RetainedEarnings' is nan | \n",
"
\n",
" \n",
" | 34 | \n",
" MAIN | \n",
" Rule | \n",
" SumUpRule | \n",
" MAIN_BS_#4_SU_#3_LongTermDebt | \n",
" Sums up the availalbe values in the columns ['LongTermDebtNoncurrent', 'LongTermDebtAndCapitalLeaseObligations'] into the column 'LongTermDebt', if the column 'LongTermDebt' is nan | \n",
"
\n",
" \n",
" | 35 | \n",
" MAIN | \n",
" Rule | \n",
" SumUpRule | \n",
" MAIN_BS_#4_SU_#4_LiabilitiesNoncurrent | \n",
" Sums up the availalbe values in the columns ['AccruedIncomeTaxesNoncurrent', 'DeferredAndPayableIncomeTaxes', 'DeferredIncomeTaxesAndOtherLiabilitiesNoncurrent', 'DeferredIncomeTaxLiabilitiesNet', 'DeferredTaxLiabilitiesNoncurrent', 'DefinedBenefitPensionPlanLiabilitiesNoncurrent', 'DerivativeLiabilitiesNoncurrent', 'FinanceLeaseLiabilityNoncurrent', 'LiabilitiesOtherThanLongtermDebtNoncurrent', 'LiabilitiesSubjectToCompromise', 'LiabilityForUncertainTaxPositionsNoncurrent', 'LongTermDebt', 'LongTermRetirementBenefitsAndOtherLiabilities', 'OperatingLeaseLiabilityNoncurrent', 'OtherLiabilitiesNoncurrent', 'OtherPostretirementDefinedBenefitPlanLiabilitiesNoncurrent', 'PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent', 'RegulatoryLiabilityNoncurrent', 'SelfInsuranceReserveNoncurrent'] into the column 'LiabilitiesNoncurrent', if the column 'LiabilitiesNoncurrent' is nan | \n",
"
\n",
" \n",
" | 36 | \n",
" MAIN | \n",
" Group | \n",
" | \n",
" MAIN_BS_#5_SetSum | \n",
" | \n",
"
\n",
" \n",
" | 37 | \n",
" MAIN | \n",
" Rule | \n",
" SetSumIfOnlyOneSummand | \n",
" MAIN_BS_#5_SetSum_#1_Assets/AssetsNoncurrent | \n",
" Copies the value of the column 'AssetsCurrent' into the column 'Assets' and sets the columns ['AssetsNoncurrent'] to 0.0 if the column 'AssetsCurrent is set and the columns ['Assets', 'AssetsNoncurrent'] are nan. | \n",
"
\n",
" \n",
" | 38 | \n",
" MAIN | \n",
" Rule | \n",
" SetSumIfOnlyOneSummand | \n",
" MAIN_BS_#5_SetSum_#2_Assets/AssetsCurrent | \n",
" Copies the value of the column 'AssetsNoncurrent' into the column 'Assets' and sets the columns ['AssetsCurrent'] to 0.0 if the column 'AssetsNoncurrent is set and the columns ['Assets', 'AssetsCurrent'] are nan. | \n",
"
\n",
" \n",
" | 39 | \n",
" MAIN | \n",
" Rule | \n",
" SetSumIfOnlyOneSummand | \n",
" MAIN_BS_#5_SetSum_#3_Liabilities/LiabilitiesNoncurrent | \n",
" Copies the value of the column 'LiabilitiesCurrent' into the column 'Liabilities' and sets the columns ['LiabilitiesNoncurrent'] to 0.0 if the column 'LiabilitiesCurrent is set and the columns ['Liabilities', 'LiabilitiesNoncurrent'] are nan. | \n",
"
\n",
" \n",
" | 40 | \n",
" MAIN | \n",
" Rule | \n",
" SetSumIfOnlyOneSummand | \n",
" MAIN_BS_#5_SetSum_#4_Liabilities/LiabilitiesCurrent | \n",
" Copies the value of the column 'LiabilitiesNoncurrent' into the column 'Liabilities' and sets the columns ['LiabilitiesCurrent'] to 0.0 if the column 'LiabilitiesNoncurrent is set and the columns ['Liabilities', 'LiabilitiesCurrent'] are nan. | \n",
"
\n",
" \n",
" | 41 | \n",
" POST | \n",
" Group | \n",
" | \n",
" POST_BS_POST | \n",
" | \n",
"
\n",
" \n",
" | 42 | \n",
" POST | \n",
" Rule | \n",
" PostCopyToFirstSummand | \n",
" POST_BS_POST_#1_AssetsCurrent/AssetsNoncurrent | \n",
" Copies the value of the 'Assets' to the first summand 'AssetsCurrent' and set the other summands ['AssetsNoncurrent'] to 0.0 if 'Assets is set and the summands ['AssetsCurrent', 'AssetsNoncurrent'] are nan. | \n",
"
\n",
" \n",
" | 43 | \n",
" POST | \n",
" Rule | \n",
" PostCopyToFirstSummand | \n",
" POST_BS_POST_#2_LiabilitiesCurrent/LiabilitiesNoncurrent | \n",
" Copies the value of the 'Liabilities' to the first summand 'LiabilitiesCurrent' and set the other summands ['LiabilitiesNoncurrent'] to 0.0 if 'Liabilities is set and the summands ['LiabilitiesCurrent', 'LiabilitiesNoncurrent'] are nan. | \n",
"
\n",
" \n",
" | 44 | \n",
" POST | \n",
" Rule | \n",
" PostSetToZero | \n",
" POST_BS_POST_#3_Assets/AssetsCurrent/AssetsNoncurrent | \n",
" Set the value of the ['Assets', 'AssetsCurrent', 'AssetsNoncurrent'] to 0.0 if all ['Assets', 'AssetsCurrent', 'AssetsNoncurrent'] are nan. | \n",
"
\n",
" \n",
" | 45 | \n",
" POST | \n",
" Rule | \n",
" PostSetToZero | \n",
" POST_BS_POST_#4_Liabilities/LiabilitiesCurrent/LiabilitiesNoncurrent | \n",
" Set the value of the ['Liabilities', 'LiabilitiesCurrent', 'LiabilitiesNoncurrent'] to 0.0 if all ['Liabilities', 'LiabilitiesCurrent', 'LiabilitiesNoncurrent'] are nan. | \n",
"
\n",
" \n",
" | 46 | \n",
" POST | \n",
" Rule | \n",
" PostSetToZero | \n",
" POST_BS_POST_#5_TemporaryEquity | \n",
" Set the value of the ['TemporaryEquity'] to 0.0 if all ['TemporaryEquity'] are nan. | \n",
"
\n",
" \n",
" | 47 | \n",
" POST | \n",
" Rule | \n",
" PostSetToZero | \n",
" POST_BS_POST_#6_RedeemableEquity | \n",
" Set the value of the ['RedeemableEquity'] to 0.0 if all ['RedeemableEquity'] are nan. | \n",
"
\n",
" \n",
" | 48 | \n",
" POST | \n",
" Rule | \n",
" PostSetToZero | \n",
" POST_BS_POST_#7_AdditionalPaidInCapital | \n",
" Set the value of the ['AdditionalPaidInCapital'] to 0.0 if all ['AdditionalPaidInCapital'] are nan. | \n",
"
\n",
" \n",
" | 49 | \n",
" POST | \n",
" Rule | \n",
" PostSetToZero | \n",
" POST_BS_POST_#8_TreasuryStockValue | \n",
" Set the value of the ['TreasuryStockValue'] to 0.0 if all ['TreasuryStockValue'] are nan. | \n",
"
\n",
" \n",
" | 50 | \n",
" VALID | \n",
" Validation | \n",
" SumValidationRule | \n",
" AssetsCheck | \n",
" Checks whether the sum of ['AssetsCurrent', 'AssetsNoncurrent'] equals the value in 'Assets' | \n",
"
\n",
" \n",
" | 51 | \n",
" VALID | \n",
" Validation | \n",
" SumValidationRule | \n",
" LiabilitiesCheck | \n",
" Checks whether the sum of ['LiabilitiesCurrent', 'LiabilitiesNoncurrent'] equals the value in 'Liabilities' | \n",
"
\n",
" \n",
" | 52 | \n",
" VALID | \n",
" Validation | \n",
" SumValidationRule | \n",
" EquityCheck | \n",
" Checks whether the sum of ['Equity', 'Liabilities'] equals the value in 'LiabilitiesAndEquity' | \n",
"
\n",
" \n",
" | 53 | \n",
" VALID | \n",
" Validation | \n",
" SumValidationRule | \n",
" AssetsLiaEquCheck | \n",
" Checks whether the sum of ['Equity', 'Liabilities'] equals the value in 'Assets' | \n",
"
\n",
" \n",
"