Generated by Pacioli version 54f833c (updated 2 hours ago). Analysis at 2021-06-16T21:51:45+0000 for charles.hoffman@me.com. This page will remain online at https://pacioli.logicalcontracts.com/reportAnalysis/b88bf817fb68976dc5dc07877f96004e54416e81.report/index.html for about 28 days.

TypeDefinedBoundDerivedOKFail
valueAssertion17220220

Rule Details

TypeName Rule ExpressionProlog form (technical)
valueAssertionFAC_CONSISTENCY_38
  • derived:0
  • ok:1
  • failed:0
 

IncomeLossFromContinuingOperationsBeforeTax=OperatingAndNonoperatingRevenues-OperatingAndNonoperatingCostsAndExpenses

1 instance:

fac:IncomeLossFromContinuingOperationsBeforeTax[2000] = fac:OperatingAndNonoperatingRevenues[2000] - fac:OperatingAndNonoperatingCostsAndExpenses[0]


'FAC_CONSISTENCY_38' valueAssertion
  IncomeLossFromContinuingOperationsBeforeTax=OperatingAndNonoperatingRevenues-OperatingAndNonoperatingCostsAndExpenses
  variables
  IncomeLossFromContinuingOperationsBeforeTax: [fallback(0),concept(fac:'IncomeLossFromContinuingOperationsBeforeTax')],
  OperatingAndNonoperatingCostsAndExpenses: [fallback(0),concept(fac:'OperatingAndNonoperatingCostsAndExpenses')],
  OperatingAndNonoperatingRevenues: [fallback(0),concept(fac:'OperatingAndNonoperatingRevenues')].
valueAssertionFAC_CONSISTENCY_16
  • derived:0
  • ok:1
  • failed:0
 

IncomeLossFromContinuingOperationsAfterTax=IncomeLossFromContinuingOperationsBeforeTax-IncomeTaxExpenseBenefit

1 instance:

fac:IncomeLossFromContinuingOperationsAfterTax[2000] = fac:IncomeLossFromContinuingOperationsBeforeTax[2000] - fac:IncomeTaxExpenseBenefit[0]


'FAC_CONSISTENCY_16' valueAssertion
  IncomeLossFromContinuingOperationsAfterTax=IncomeLossFromContinuingOperationsBeforeTax-IncomeTaxExpenseBenefit
  variables
  IncomeLossFromContinuingOperationsAfterTax: [fallback(0),concept(fac:'IncomeLossFromContinuingOperationsAfterTax')],
  IncomeLossFromContinuingOperationsBeforeTax: [fallback(0),concept(fac:'IncomeLossFromContinuingOperationsBeforeTax')],
  IncomeTaxExpenseBenefit: [fallback(0),concept(fac:'IncomeTaxExpenseBenefit')].
valueAssertionFAC_CONSISTENCY_17
  • derived:0
  • ok:1
  • failed:0
 

NetIncomeLoss=IncomeLossFromContinuingOperationsAfterTax+IncomeLossFromDiscontinuedOperationsNetOfTax

1 instance:

fac:NetIncomeLoss[2000] = fac:IncomeLossFromContinuingOperationsAfterTax[2000] + fac:IncomeLossFromDiscontinuedOperationsNetOfTax[0]


'FAC_CONSISTENCY_17' valueAssertion
  NetIncomeLoss=IncomeLossFromContinuingOperationsAfterTax+IncomeLossFromDiscontinuedOperationsNetOfTax
  variables
  IncomeLossFromContinuingOperationsAfterTax: [fallback(0),concept(fac:'IncomeLossFromContinuingOperationsAfterTax')],
  IncomeLossFromDiscontinuedOperationsNetOfTax: [fallback(0),concept(fac:'IncomeLossFromDiscontinuedOperationsNetOfTax')],
  NetIncomeLoss: [fallback(0),concept(fac:'NetIncomeLoss')].
valueAssertionFAC_CONSISTENCY_2
  • derived:0
  • ok:2
  • failed:0
 

Assets=LiabilitiesAndEquity

2 instances:

fac:Assets[6000] = fac:LiabilitiesAndEquity[6000]

fac:Assets[13000] = fac:LiabilitiesAndEquity[13000]


'FAC_CONSISTENCY_2' valueAssertion
  Assets=LiabilitiesAndEquity
  variables
  Assets: [fallback(0),concept(fac:'Assets')],
  LiabilitiesAndEquity: [fallback(0),concept(fac:'LiabilitiesAndEquity')].
valueAssertionFAC_CONSISTENCY_3
  • derived:0
  • ok:2
  • failed:0
 

Assets=CurrentAssets+NoncurrentAssets

2 instances:

fac:Assets[6000] = fac:CurrentAssets[5000] + fac:NoncurrentAssets[1000]

fac:Assets[13000] = fac:CurrentAssets[7000] + fac:NoncurrentAssets[6000]


'FAC_CONSISTENCY_3' valueAssertion
  Assets=CurrentAssets+NoncurrentAssets
  variables
  Assets: [fallback(0),concept(fac:'Assets')],
  CurrentAssets: [fallback(0),concept(fac:'CurrentAssets')],
  NoncurrentAssets: [fallback(0),concept(fac:'NoncurrentAssets')].
valueAssertionFAC_CONSISTENCY_4
  • derived:0
  • ok:2
  • failed:0
 

Liabilities=CurrentLiabilities+NoncurrentLiabilities

2 instances:

fac:Liabilities[2000] = fac:CurrentLiabilities[1000] + fac:NoncurrentLiabilities[1000]

fac:Liabilities[7000] = fac:CurrentLiabilities[1000] + fac:NoncurrentLiabilities[6000]


'FAC_CONSISTENCY_4' valueAssertion
  Liabilities=CurrentLiabilities+NoncurrentLiabilities
  variables
  CurrentLiabilities: [fallback(0),concept(fac:'CurrentLiabilities')],
  Liabilities: [fallback(0),concept(fac:'Liabilities')],
  NoncurrentLiabilities: [fallback(0),concept(fac:'NoncurrentLiabilities')].
valueAssertionFAC_CONSISTENCY_5
  • derived:0
  • ok:2
  • failed:0
 

LiabilitiesAndEquity=Liabilities+Equity

2 instances:

fac:LiabilitiesAndEquity[6000] = fac:Liabilities[2000] + fac:Equity[4000]

fac:LiabilitiesAndEquity[13000] = fac:Liabilities[7000] + fac:Equity[6000]


'FAC_CONSISTENCY_5' valueAssertion
  LiabilitiesAndEquity=Liabilities+Equity
  variables
  Equity: [fallback(0),concept(fac:'Equity')],
  Liabilities: [fallback(0),concept(fac:'Liabilities')],
  LiabilitiesAndEquity: [fallback(0),concept(fac:'LiabilitiesAndEquity')].
valueAssertionREPORT_Balances_BalanceSheet
  • derived:0
  • ok:2
  • failed:0
 

Total_Assets=Total_LiabilitiesAndEquity

2 instances:

mini:Assets[6000] = mini:LiabilitiesAndEquity[6000]

mini:Assets[13000] = mini:LiabilitiesAndEquity[13000]


'REPORT_Balances_BalanceSheet' valueAssertion
  Total_Assets=Total_LiabilitiesAndEquity
  variables
  Total_Assets: [concept(mini:'Assets')],
  Total_LiabilitiesAndEquity: [concept(mini:'LiabilitiesAndEquity')].
valueAssertionREPORT_RollFowardReconciles_CashFlowStatement
  • derived:0
  • ok:1
  • failed:0
 

VARIABLE_BalanceStart+NetCashFlow=VARIABLE_BalanceEnd

1 instance:

mini:CashAndCashEquivalents[3000] + mini:NetCashFlow[1000] = mini:CashAndCashEquivalents[4000]


'REPORT_RollFowardReconciles_CashFlowStatement' valueAssertion
  VARIABLE_BalanceStart+NetCashFlow=VARIABLE_BalanceEnd
  variables
  NetCashFlow: [concept(mini:'NetCashFlow')],
  VARIABLE_BalanceEnd: [instantDuration('NetCashFlow',end),concept(mini:'CashAndCashEquivalents')],
  VARIABLE_BalanceStart: [instantDuration('NetCashFlow',start),concept(mini:'CashAndCashEquivalents')].
valueAssertionREPORT_RollFowardReconciles_StatementOfChangesInEquity
  • derived:0
  • ok:1
  • failed:0
 

VARIABLE_BalanceStart+VARIABLE_Change1=VARIABLE_BalanceEnd

1 instance:

mini:Equity[4000] + mini:NetIncomeLoss[2000] = mini:Equity[6000]


'REPORT_RollFowardReconciles_StatementOfChangesInEquity' valueAssertion
  VARIABLE_BalanceStart+VARIABLE_Change1=VARIABLE_BalanceEnd
  variables
  VARIABLE_BalanceEnd: [instantDuration('VARIABLE_Change1',end),concept(mini:'Equity')],
  VARIABLE_BalanceStart: [instantDuration('VARIABLE_Change1',start),concept(mini:'Equity')],
  VARIABLE_Change1: [concept(mini:'NetIncomeLoss')].
valueAssertionREPORT_RollForwardReconciles_CashAndCashEquivalents
  • derived:0
  • ok:1
  • failed:0
 

VARIABLE_BalanceStart+CollectionReceivables-PaymentOfAccountsPayable+AdditionalLongtermBorrowings-RepaymentLongtermBorrowings-CapitalAdditionsPropertyPlantAndEquipment=VARIABLE_BalanceEnd

1 instance:

mini:CashAndCashEquivalents[3000] + mini:CollectionReceivables[3000] - mini:PaymentOfAccountsPayable[2000] + mini:AdditionalLongtermBorrowings2[6000] - mini:RepaymentLongtermBorrowings2[1000] - mini:CapitalAdditionsPropertyPlantAndEquipment2[5000] = mini:CashAndCashEquivalents[4000]


'REPORT_RollForwardReconciles_CashAndCashEquivalents' valueAssertion
  VARIABLE_BalanceStart+CollectionReceivables-PaymentOfAccountsPayable+AdditionalLongtermBorrowings-RepaymentLongtermBorrowings-CapitalAdditionsPropertyPlantAndEquipment=VARIABLE_BalanceEnd
  variables
  AdditionalLongtermBorrowings: [concept(mini:'AdditionalLongtermBorrowings2')],
  CapitalAdditionsPropertyPlantAndEquipment: [concept(mini:'CapitalAdditionsPropertyPlantAndEquipment2')],
  CollectionReceivables: [concept(mini:'CollectionReceivables')],
  PaymentOfAccountsPayable: [concept(mini:'PaymentOfAccountsPayable')],
  RepaymentLongtermBorrowings: [concept(mini:'RepaymentLongtermBorrowings2')],
  VARIABLE_BalanceEnd: [instantDuration('CollectionReceivables',end),concept(mini:'CashAndCashEquivalents')],
  VARIABLE_BalanceStart: [instantDuration('CollectionReceivables',start),concept(mini:'CashAndCashEquivalents')].
valueAssertionREPORT_RollForwardReconciles_Receivables
  • derived:0
  • ok:1
  • failed:0
 

VARIABLE_BalanceStart+Sales-CollectionReceivables-AdditionsToAllowanceForBadDebts-BadDebtsWrittenOff=VARIABLE_BalanceEnd

1 instance:

mini:Receivables[1000] + mini:Sales2[4000] - mini:CollectionReceivables2[3000] - mini:AdditionsToAllowanceForBadDebts[0] - mini:BadDebtsWrittenOff[0] = mini:Receivables[2000]


'REPORT_RollForwardReconciles_Receivables' valueAssertion
  VARIABLE_BalanceStart+Sales-CollectionReceivables-AdditionsToAllowanceForBadDebts-BadDebtsWrittenOff=VARIABLE_BalanceEnd
  variables
  AdditionsToAllowanceForBadDebts: [concept(mini:'AdditionsToAllowanceForBadDebts')],
  BadDebtsWrittenOff: [concept(mini:'BadDebtsWrittenOff')],
  CollectionReceivables: [concept(mini:'CollectionReceivables2')],
  Sales: [concept(mini:'Sales2')],
  VARIABLE_BalanceEnd: [instantDuration('Sales',end),concept(mini:'Receivables')],
  VARIABLE_BalanceStart: [instantDuration('Sales',start),concept(mini:'Receivables')].
valueAssertionREPORT_RollForwardReconciles_Inventories
  • derived:0
  • ok:1
  • failed:0
 

VARIABLE_BalanceStart+PurchasesOfInventoryForSale-CostsOfSales-InventoryWrittenOff=VARIABLE_BalanceEnd

1 instance:

mini:Inventories[1000] + mini:PurchasesOfInventoryForSale[2000] - mini:CostsOfSales2[2000] - mini:InventoryWrittenOff[0] = mini:Inventories[1000]


'REPORT_RollForwardReconciles_Inventories' valueAssertion
  VARIABLE_BalanceStart+PurchasesOfInventoryForSale-CostsOfSales-InventoryWrittenOff=VARIABLE_BalanceEnd
  variables
  CostsOfSales: [concept(mini:'CostsOfSales2')],
  InventoryWrittenOff: [concept(mini:'InventoryWrittenOff')],
  PurchasesOfInventoryForSale: [concept(mini:'PurchasesOfInventoryForSale')],
  VARIABLE_BalanceEnd: [instantDuration('PurchasesOfInventoryForSale',end),concept(mini:'Inventories')],
  VARIABLE_BalanceStart: [instantDuration('PurchasesOfInventoryForSale',start),concept(mini:'Inventories')].
valueAssertionREPORT_RollForwardReconciles_PropertyPlantAndEquipment
  • derived:0
  • ok:1
  • failed:0
 

VARIABLE_BalanceStart+CapitalAdditionsPropertyPlantAndEquipment-DepreciationAndAmortization-PropertyPlantAndEquipmentWrittenOff=VARIABLE_BalanceEnd

1 instance:

mini:PropertyPlantAndEquipment[1000] + mini:CapitalAdditionsPropertyPlantAndEquipment[5000] - mini:DepreciationAndAmortization2[0] - mini:PropertyPlantAndEquipmentWrittenOff[0] = mini:PropertyPlantAndEquipment[6000]


'REPORT_RollForwardReconciles_PropertyPlantAndEquipment' valueAssertion
  VARIABLE_BalanceStart+CapitalAdditionsPropertyPlantAndEquipment-DepreciationAndAmortization-PropertyPlantAndEquipmentWrittenOff=VARIABLE_BalanceEnd
  variables
  CapitalAdditionsPropertyPlantAndEquipment: [concept(mini:'CapitalAdditionsPropertyPlantAndEquipment')],
  DepreciationAndAmortization: [concept(mini:'DepreciationAndAmortization2')],
  PropertyPlantAndEquipmentWrittenOff: [concept(mini:'PropertyPlantAndEquipmentWrittenOff')],
  VARIABLE_BalanceEnd: [instantDuration('CapitalAdditionsPropertyPlantAndEquipment',end),concept(mini:'PropertyPlantAndEquipment')],
  VARIABLE_BalanceStart: [instantDuration('CapitalAdditionsPropertyPlantAndEquipment',start),concept(mini:'PropertyPlantAndEquipment')].
valueAssertionREPORT_RollForwardReconciles_AccountsPayable
  • derived:0
  • ok:1
  • failed:0
 

VARIABLE_BalanceStart+PurchasesOfInventoryForSale-PaymentOfAccountsPayable=VARIABLE_BalanceEnd

1 instance:

mini:AccountsPayable[1000] + mini:PurchasesOfInventoryForSale2[2000] - mini:PaymentOfAccountsPayable2[2000] = mini:AccountsPayable[1000]


'REPORT_RollForwardReconciles_AccountsPayable' valueAssertion
  VARIABLE_BalanceStart+PurchasesOfInventoryForSale-PaymentOfAccountsPayable=VARIABLE_BalanceEnd
  variables
  PaymentOfAccountsPayable: [concept(mini:'PaymentOfAccountsPayable2')],
  PurchasesOfInventoryForSale: [concept(mini:'PurchasesOfInventoryForSale2')],
  VARIABLE_BalanceEnd: [instantDuration('PurchasesOfInventoryForSale',end),concept(mini:'AccountsPayable')],
  VARIABLE_BalanceStart: [instantDuration('PurchasesOfInventoryForSale',start),concept(mini:'AccountsPayable')].
valueAssertionREPORT_RollForwardReconciles_LongTermDebt
  • derived:0
  • ok:1
  • failed:0
 

VARIABLE_BalanceStart+AdditionalLongtermBorrowings-RepaymentLongtermBorrowings=VARIABLE_BalanceEnd

1 instance:

mini:LongtermDebt[1000] + mini:AdditionalLongtermBorrowings[6000] - mini:RepaymentLongtermBorrowings[1000] = mini:LongtermDebt[6000]


'REPORT_RollForwardReconciles_LongTermDebt' valueAssertion
  VARIABLE_BalanceStart+AdditionalLongtermBorrowings-RepaymentLongtermBorrowings=VARIABLE_BalanceEnd
  variables
  AdditionalLongtermBorrowings: [concept(mini:'AdditionalLongtermBorrowings')],
  RepaymentLongtermBorrowings: [concept(mini:'RepaymentLongtermBorrowings')],
  VARIABLE_BalanceEnd: [instantDuration('AdditionalLongtermBorrowings',end),concept(mini:'LongtermDebt')],
  VARIABLE_BalanceStart: [instantDuration('AdditionalLongtermBorrowings',start),concept(mini:'LongtermDebt')].
valueAssertionREPORT_RollFowardReconciles_RetainedEarnings
  • derived:0
  • ok:1
  • failed:0
 

VARIABLE_BalanceStart+VARIABLE_Change1=VARIABLE_BalanceEnd

1 instance:

mini:RetainedEarnings[4000] + mini:NetIncomeLoss[2000] = mini:RetainedEarnings[6000]


'REPORT_RollFowardReconciles_RetainedEarnings' valueAssertion
  VARIABLE_BalanceStart+VARIABLE_Change1=VARIABLE_BalanceEnd
  variables
  VARIABLE_BalanceEnd: [instantDuration('VARIABLE_Change1',end),concept(mini:'RetainedEarnings')],
  VARIABLE_BalanceStart: [instantDuration('VARIABLE_Change1',start),concept(mini:'RetainedEarnings')],
  VARIABLE_Change1: [concept(mini:'NetIncomeLoss')].

For more information: http://logicalcontracts.com/xbrl-and-sbrm-reporting/
DISCLAIMER: this analysis is provided by software still under development, and likely incomplete or even erroneous; do NOT use it other than for experimental, inconsequential purposes