-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | A library to fetch and parse financial data from the SimFin(+) API.
--
-- This library aims to wrap the SimFin(+) API as completely as
-- possible. SimFin provides fundamental financial data.
@package simfin
@version 1.0.0
module SimFin.Types.CompanyInfo
-- | Genreal information about a company. See the SimFin docs.
data CompanyInfoRow
CompanyInfoRow :: Int -> Text -> Text -> Int -> Int -> Int -> Text -> CompanyInfoRow
[$sel:simFinId:CompanyInfoRow] :: CompanyInfoRow -> Int
[$sel:ticker:CompanyInfoRow] :: CompanyInfoRow -> Text
[$sel:companyName:CompanyInfoRow] :: CompanyInfoRow -> Text
[$sel:industryId:CompanyInfoRow] :: CompanyInfoRow -> Int
[$sel:monthFYEnd:CompanyInfoRow] :: CompanyInfoRow -> Int
[$sel:numberEmployees:CompanyInfoRow] :: CompanyInfoRow -> Int
[$sel:businessSummary:CompanyInfoRow] :: CompanyInfoRow -> Text
instance GHC.Show.Show SimFin.Types.CompanyInfo.CompanyInfoRow
instance Data.Aeson.Types.FromJSON.FromJSON SimFin.Types.CompanyInfo.CompanyInfoRow
module SimFin.Types.CompanyListing
-- | SimFin ID and company ticker. See the SimFin docs.
data CompanyListingRow
CompanyListingRow :: Int -> Text -> CompanyListingRow
[$sel:simFinId:CompanyListingRow] :: CompanyListingRow -> Int
[$sel:ticker:CompanyListingRow] :: CompanyListingRow -> Text
-- | Wrapper to parse a CompanyListing record from SimFin's JSON format.
-- You probably don't want to use this.
newtype CompanyListingKeyed
CompanyListingKeyed :: [CompanyListingRow] -> CompanyListingKeyed
[$sel:unKeyCompanyListing:CompanyListingKeyed] :: CompanyListingKeyed -> [CompanyListingRow]
instance GHC.Show.Show SimFin.Types.CompanyListing.CompanyListingRow
instance Data.Aeson.Types.FromJSON.FromJSON SimFin.Types.CompanyListing.CompanyListingKeyed
instance Data.Aeson.Types.FromJSON.FromJSON SimFin.Types.CompanyListing.CompanyListingRow
module SimFin.Common
-- | Represents all the types of error the server returns, and that we can
-- encounter on our side.
data ApiError
-- | Can't turn ByteString into JSON
DecodeError :: ByteString -> String -> ApiError
-- | Can't turn JSON into result type
ParseError :: Value -> String -> ApiError
-- | Server returned '{"error": "..."}' along with a non-200 status code.
-- This could in theory be parsed into machine-readable format, with
-- variants such as `InvalidApiKey | RateLimited | ...`, but the API
-- doesn't guarantee error message stability.
Other :: Text -> ApiError
-- | The result of calling fetch* is either an error or a successful
-- result.
type ApiResult = Either ApiError
-- | Fetch a list of company tickers and SimFin ids. This is the only
-- endpoint common to free and paid customers.
fetchCompanyList :: (MonadThrow m, MonadIO m) => SimFinContext -> m (Either ApiError [CompanyListingRow])
-- | Make a request, all fetch* functions call this.
performRequest :: (MonadIO m, FromJSON a) => SimFinContext -> ByteString -> [QueryParam] -> m (ApiResult a)
instance GHC.Show.Show SimFin.Common.ApiError
instance Data.Aeson.Types.FromJSON.FromJSON SimFin.Common.ApiError
module SimFin.Types.FiscalPeriod
-- | A fiscal period as understood by the SimFin API.
data FiscalPeriod
Q1 :: FiscalPeriod
Q2 :: FiscalPeriod
Q3 :: FiscalPeriod
Q4 :: FiscalPeriod
H1 :: FiscalPeriod
H2 :: FiscalPeriod
FullYear :: FiscalPeriod
FirstNineMonths :: FiscalPeriod
SixMonths :: FiscalPeriod
-- | Converts a fiscal period into a query string fragment as understood by
-- the SimFin API.
fiscalPeriodParam :: FiscalPeriod -> ByteString
instance GHC.Show.Show SimFin.Types.FiscalPeriod.FiscalPeriod
instance GHC.Classes.Eq SimFin.Types.FiscalPeriod.FiscalPeriod
instance Data.Aeson.Types.FromJSON.FromJSON SimFin.Types.FiscalPeriod.FiscalPeriod
module SimFin.Types.Industry
-- | Distinguish between different industry-specific data.
data Industry general bank insurance
General :: general -> Industry general bank insurance
Bank :: bank -> Industry general bank insurance
Insurance :: insurance -> Industry general bank insurance
-- | Map all discriminations of an Industry.
mapIndustry :: (a -> a') -> (b -> b') -> (c -> c') -> Industry a b c -> Industry a' b' c'
-- | List of discriminations of lists to list of discriminations. Used to
-- removing extra nesting from the statements API results.
invertIndustries :: [Industry [a] [b] [c]] -> [Industry a b c]
instance (GHC.Show.Show general, GHC.Show.Show bank, GHC.Show.Show insurance) => GHC.Show.Show (SimFin.Types.Industry.Industry general bank insurance)
module SimFin.Types.CashFlow
-- | Cash flow statement for general companies.
data GeneralCashFlowRow
GeneralCashFlowRow :: Int -> Text -> String -> Int -> Day -> Day -> Day -> Text -> Bool -> Bool -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> GeneralCashFlowRow
[$sel:simFinId:GeneralCashFlowRow] :: GeneralCashFlowRow -> Int
[$sel:ticker:GeneralCashFlowRow] :: GeneralCashFlowRow -> Text
[$sel:fiscalPeriod:GeneralCashFlowRow] :: GeneralCashFlowRow -> String
[$sel:fiscalYear:GeneralCashFlowRow] :: GeneralCashFlowRow -> Int
[$sel:reportDate:GeneralCashFlowRow] :: GeneralCashFlowRow -> Day
[$sel:publishDate:GeneralCashFlowRow] :: GeneralCashFlowRow -> Day
[$sel:restatedDate:GeneralCashFlowRow] :: GeneralCashFlowRow -> Day
[$sel:source:GeneralCashFlowRow] :: GeneralCashFlowRow -> Text
[$sel:tTM:GeneralCashFlowRow] :: GeneralCashFlowRow -> Bool
[$sel:valueCheck:GeneralCashFlowRow] :: GeneralCashFlowRow -> Bool
[$sel:netIncomeStartingLine:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netIncome:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netIncomeFromDiscontinuedOperations:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:otherAdjustmensts:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:depreciationAndAmortizatison:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:nonCashItems:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:stockBasedCompensatison:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:deferredIncomeTaxes:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:otherNonCashAdjustments:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:changeInWorkingCapital:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:changeInAccountsReceivable:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:changeInInventories:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:changeInAccountsPayable:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:changeInOther:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashFromDiscontinuedOperationsOperating:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashFromOpesratingActivities:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:changeInFixedAssetsAndIntsangibles:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:dispositionOfFixedAssetssAndIntangibles:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:dispositionOfFixedAsssets:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:dispositionOfIntangibleAssets:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:acquisitionOfFixedAssetsAndIntangibles:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:purchaseOfFixedAssets:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:acquisitionOfIntangibleAssets:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:otherChangeInFixedAssetsAndIntangibles:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netChangeInLongTermInvestment:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:decreaseInLongTermInvestment:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:increaseInLongTermInvestment:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashFromAcquisitionsAndDivestitures:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashFromDivestitures:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:cashForAcquisitionOfSubsidiaries:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:cashForJointVentures:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashFromOtherAcquisitions:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:otherInvestingActivities:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashFromDiscontinuedOperationsInvesting:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashFromInvestingActivities:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:dividendsPaid:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:cashFromRepaymentOfDebt:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:cashFromRepaymentOfShortTermDebtNet:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:cashFromRepaymentOfLongTermDebtNet:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:repaymentsOfLongTermDebt:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:cashFromLongTermDebt:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:cashFromRepurchaseOfEquity:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:increaseInCapitalStock:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:decreaseInCapitalStock:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:otherFinancingActivities:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashFromDiscontinuedOperationsFinancing:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashFromFinancingActivities:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashBeforeDiscOperationsAndFX:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:changeInCashFromDiscOperationsAndOther:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashBeforeFX:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:effectOfForeignExchangeRates:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netChangeInCash:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
-- | Cash flow statement for banks.
data BankCashFlowRow
BankCashFlowRow :: Int -> Text -> String -> Int -> Day -> Day -> Day -> Text -> Bool -> Bool -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> BankCashFlowRow
[$sel:simFinId:BankCashFlowRow] :: BankCashFlowRow -> Int
[$sel:ticker:BankCashFlowRow] :: BankCashFlowRow -> Text
[$sel:fiscalPeriod:BankCashFlowRow] :: BankCashFlowRow -> String
[$sel:fiscalYear:BankCashFlowRow] :: BankCashFlowRow -> Int
[$sel:reportDate:BankCashFlowRow] :: BankCashFlowRow -> Day
[$sel:publishDate:BankCashFlowRow] :: BankCashFlowRow -> Day
[$sel:restatedDate:BankCashFlowRow] :: BankCashFlowRow -> Day
[$sel:source:BankCashFlowRow] :: BankCashFlowRow -> Text
[$sel:tTM:BankCashFlowRow] :: BankCashFlowRow -> Bool
[$sel:valueCheck:BankCashFlowRow] :: BankCashFlowRow -> Bool
[$sel:netIncomeStartingLine:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netIncome:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netIncomeFromDiscontinuedOperations:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:otherAdjustments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:depreciationAndAmortization:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:provisionForLoanLosses:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:nonCashItems:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:gainOnSaleOfSecuritiesAndLoans:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:deferredIncomeTaxes:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:stockBasedCompensation:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:otherNonCashAdjustments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:changeInWorkingCapital:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:tradingAssetsAndLiabilities:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeOfInvestments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeOfInterbankAssets:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeOfInterbankLiabilities:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeInOperatingLoans:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:accruedInterestReceivable:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:accruedInterestPayable:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:otherOperatingAssetsLiabilities:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashFromDiscontinuedOperationsOperating:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashFromOperatingActivities:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:changeInFixedAssetsAndIntangibles:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:dispositionOfFixedAssetsAndIntangibles:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:capitalExpenditures:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeInInvestments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:decreaseInInvestments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:decreaseInHTMInvestments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:decreaseInAFSInvestments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:increaseInInvestments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:increaseInHTMInvestments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:increaseInAFSInvestments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeInOtherInvestments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeInLoansAndInterbank:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeInCustomerLoans:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeInInterbankAssets:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeInOtherLoans:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashFromAcquisitionsAndDivestitures:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashFromDivestitures:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:cashForAcquisitionOfSubsidiaries:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:cashForJointVentures:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashFromOtherAcquisitions:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:otherInvestingActivities:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashFromDiscontinuedOperationsInvesting:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashFromInvestingActivities:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:dividendsPaid:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:cashFromRepaymentOfDebt:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:cashFromRepaymentOfShortTermDebtNet:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeInInterbankTransfers:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:cashFromRepaymentOfLongTermDebtNet:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:repaymentsOfLongTermDebt:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:cashFromLongTermDebt:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:cashFromRepurchaseOfEquity:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:increaseInCapitalStock:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:decreaseInCapitalStock:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeInDeposits:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:otherFinancingActivities:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashFromDiscontinuedOperationsFinancing:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashFromFinancingActivities:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashBeforeDiscOperationsAndFX:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:changeInCashFromDiscOperationsAndOther:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashBeforeFX:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:effectOfForeignExchangeRates:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeInCash:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
-- | Cash flow statement for Insurance companies.
data InsuranceCashFlowRow
InsuranceCashFlowRow :: Int -> Text -> String -> Int -> Day -> Day -> Day -> Text -> Bool -> Bool -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> InsuranceCashFlowRow
[$sel:simFinId:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Int
[$sel:ticker:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Text
[$sel:fiscalPeriod:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> String
[$sel:fiscalYear:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Int
[$sel:reportDate:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Day
[$sel:publishDate:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Day
[$sel:restatedDate:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Day
[$sel:source:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Text
[$sel:tTM:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Bool
[$sel:valueCheck:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Bool
[$sel:netIncomeStartingLine:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netIncome:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netIncomeFromDiscontinuedOperations:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:otherAdjustments:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:depreciationAndAmortization:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:nonCashItems:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:stockBasedCompensation:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:deferredIncomeTaxes:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:otherNonCashAdjustments:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:changeInWorkingCapital:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netCashFromDiscontinuedOperationsOperating:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netCashFromOperatingActivities:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:changeInFixedAssetsAndIntangibles:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:dispositionOfFixedAssetsAndIntangibles:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:acquisitionOfFixedAssetsAndIntangibles:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netChangeInInvestments:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:increaseInInvestments:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:decreaseInInvestments:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:otherInvestingActivities:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netCashFromDiscontinuedOperationsInvesting:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netCashFromInvestingActivities:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:dividendsPaid:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:cashFromRepaymentOfDebt:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:cashFromRepaymentOfShortTermDebtNet:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:cashFromRepaymentOfLongTermDebtNet:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:repaymentsOfLongTermDebt:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:cashFromLongTermDebt:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:cashFromRepurchaseOfEquity:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:increaseInCapitalStock:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:decreaseInCapitalStock:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:changeInInsuranceReserves:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:otherFinancingActivities:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netCashFromDiscontinuedOperationsFinancing:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netCashFromFinancingActivities:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netCashBeforeDiscOperationsAndFX:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:changeInCashFromDiscOperationsAndOther:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netCashBeforeFX:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:effectOfForeignExchangeRates:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netChangeInCash:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
-- | Discrimination of cash flow lists.
type IndustryCashFlows = Industry [GeneralCashFlowRow] [BankCashFlowRow] [InsuranceCashFlowRow]
-- | Discrimination of cash flows.
type IndustryCashFlow = Industry GeneralCashFlowRow BankCashFlowRow InsuranceCashFlowRow
instance GHC.Show.Show SimFin.Types.CashFlow.GeneralCashFlowRow
instance GHC.Show.Show SimFin.Types.CashFlow.BankCashFlowRow
instance GHC.Show.Show SimFin.Types.CashFlow.InsuranceCashFlowRow
instance Data.Aeson.Types.FromJSON.FromJSON SimFin.Types.CashFlow.IndustryCashFlows
instance Data.Aeson.Types.FromJSON.FromJSON SimFin.Types.CashFlow.IndustryCashFlowsKeyed
instance Data.Aeson.Types.FromJSON.FromJSON SimFin.Types.CashFlow.InsuranceCashFlowsKeyed
instance Data.Aeson.Types.FromJSON.FromJSON SimFin.Types.CashFlow.InsuranceCashFlowRow
instance Data.Aeson.Types.FromJSON.FromJSON SimFin.Types.CashFlow.BankCashFlowsKeyed
instance Data.Aeson.Types.FromJSON.FromJSON SimFin.Types.CashFlow.BankCashFlowRow
instance Data.Aeson.Types.FromJSON.FromJSON SimFin.Types.CashFlow.GeneralCashFlowsKeyed
instance Data.Aeson.Types.FromJSON.FromJSON SimFin.Types.CashFlow.GeneralCashFlowRow
module SimFin.Types.BalanceSheet
-- | Balance sheet statement for general companies.
data GeneralBalanceSheetRow
GeneralBalanceSheetRow :: Int -> Text -> String -> Int -> Day -> Day -> Day -> Text -> Bool -> Bool -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> GeneralBalanceSheetRow
[$sel:simFinId:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Int
[$sel:ticker:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Text
[$sel:fiscalPeriod:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> String
[$sel:fiscalYear:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Int
[$sel:reportDate:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Day
[$sel:publishDate:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Day
[$sel:restatedDate:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Day
[$sel:source:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Text
[$sel:tTM:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Bool
[$sel:valueCheck:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Bool
[$sel:cashCashEquivalentsAndShortTermInvestments:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:cashAndCashEquivalents:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:shortTermInvestments:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:accountsAndNotesReceivable:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:accountsReceivableNet:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:notesReceivableNet:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:unbilledRevenues:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:inventories:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:rawMaterials:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:workInProcess:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:finishedGoods:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:otherInventory:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:otherShortTermAssets:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:prepaidExpenses:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:derivativeAndHedgingAssetsShortTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:assetsHeldForSale:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:deferredTaxAssetsShortTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:incomeTaxesReceivable:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:discontinuedOperationsShortTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:miscShortTermAssets:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:totalCurrentAssets:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:propertyPlantAndEquipmentNet:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:propertyPlantAndEquipment:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:accumulatedDepreciation:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:longTermInvestmentsAndReceivables:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:longTermInvestments:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:longTermMarketableSecurities:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:longTermReceivables:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:otherLongTermAssets:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:intangibleAssets:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:goodwill:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:otherIntangibleAssets:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:prepaidExpense:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:deferredTaxAssetsLongTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:derivativeAndHedgingAssetsLongTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:prepaidPensionCosts:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:discontinuedOperationsLongTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:investmentsinAffiliates:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:miscLongTermAssets:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:totalNoncurrentAssets:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:totalAssets:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:payablesAndAccruals:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:accountsPayable:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:accruedTaxes:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:interestAndDividendsPayable:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:otherPayablesAndAccruals:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:shortTermDebt:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:shortTermBorrowings:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:shortTermCapitalLeases:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:currentPortionOfLongTermDebt:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:otherShortTermLiabilities:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:deferredRevenueShortTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:liabilitiesfromDerivativesAndHedgingShortTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:deferredTaxLiabilitiesShortTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:liabilitiesfromDiscontinuedOperationsShortTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:miscShortTermLiabilities:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:totalCurrentLiabilities:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:longTermDebt:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:longTermBorrowings:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:longTermCapitalLeases:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:otherLongTermLiabilities:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:accruedLiabilities:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:pensionLiabilities:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:pensions:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:otherPostRetirementBenefits:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:deferredCompensation:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:deferredRevenueLongTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:deferredTaxLiabilitiesLongTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:liabilitiesfromDerivativesAndHedgingLongTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:liabilitiesfromDiscontinuedOperationsLongTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:miscLongTermLiabilities:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:totalNoncurrentLiabilities:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:totalLiabilities:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:preferredEquity:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:shareCapitalAndAdditionalPaidInCapital:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:commonStock:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:additionalPaidinCapital:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:otherShareCapital:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:treasuryStock:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:retainedEarnings:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:otherEquity:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:equityBeforeMinorityInterest:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:minorityInterest:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:totalEquity:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:totalLiabilitiesAndEquity:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
-- | Balance sheet statement for banks.
data BankBalanceSheetRow
BankBalanceSheetRow :: Int -> Text -> String -> Int -> Day -> Day -> Day -> Text -> Bool -> Bool -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> BankBalanceSheetRow
[$sel:simFinId:BankBalanceSheetRow] :: BankBalanceSheetRow -> Int
[$sel:ticker:BankBalanceSheetRow] :: BankBalanceSheetRow -> Text
[$sel:fiscalPeriod:BankBalanceSheetRow] :: BankBalanceSheetRow -> String
[$sel:fiscalYear:BankBalanceSheetRow] :: BankBalanceSheetRow -> Int
[$sel:reportDate:BankBalanceSheetRow] :: BankBalanceSheetRow -> Day
[$sel:publishDate:BankBalanceSheetRow] :: BankBalanceSheetRow -> Day
[$sel:restatedDate:BankBalanceSheetRow] :: BankBalanceSheetRow -> Day
[$sel:source:BankBalanceSheetRow] :: BankBalanceSheetRow -> Text
[$sel:tTM:BankBalanceSheetRow] :: BankBalanceSheetRow -> Bool
[$sel:valueCheck:BankBalanceSheetRow] :: BankBalanceSheetRow -> Bool
[$sel:cashCashEquivalentsAndShortTermInvestments:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:interbankAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:fedFundsSoldAndRepos:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherInterbankAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:shortAndLongTermInvestments:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:tradingSecurities:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:investmentSecuritiesAvailableforSale:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:investmentSecuritiesHeldtoMaturity:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:realEstateInvestments:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherInvestments:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:accountsAndNotesReceivable:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:netLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:reserveforLoanLosses:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:totalLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:totalCommercialLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:commercialRealEstateLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherCommercialLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:totalConsumerLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:creditCardLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:homeEquityLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:familyResidentialLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:autoLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:studentLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherConsumerLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:netFixedAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:propertyPlantAndEquipmentNet:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:operatingLeaseAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherFixedAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:intangibleAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:goodwill:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherIntangibleAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:investmentsInAssociates:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:deferredTaxAssetsShortTerm:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:derivativesAndHedgingAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:discontinuedOperationsAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:customerAcceptancesAndLiabilities:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:totalAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:totalDeposits:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:demandDeposits:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:interestBearingDeposits:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:savingDeposits:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:timeDeposits:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherDeposits:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:shortTermDebt:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:securitiesSoldUnderRepo:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:tradingAccountLiabilities:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:shortTermCapitalLeases:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:currentPortionofLongTermDebt:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:shortTermBorrowings:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:payablesBrokerDealers:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:longTermDebt:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:longTermCapitalLeases:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:longTermBorrowings:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:pensionLiabilities:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:pensions:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherPostRetirementBenefits:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:deferredTaxLiabilitiesShortTerm:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:derivativesAndHedgingLiabilities:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:discontinuedOperationsLiabilities:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherLiabilities:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:totalLiabilities:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:preferredEquity:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:shareCapitalAndAdditionalPaidInCapital:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:commonStock:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:additionalPaidInCapital:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherShareCapital:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:treasuryStock:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:retainedEarnings:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherEquity:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:equityBeforeMinorityInterest:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:minorityInterest:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:totalEquity:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:totalLiabilitiesAndEquity:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
-- | Balance sheet statement for insurance companies.
data InsuranceBalanceSheetRow
InsuranceBalanceSheetRow :: Int -> Text -> String -> Int -> Day -> Day -> Day -> Text -> Bool -> Bool -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> InsuranceBalanceSheetRow
[$sel:simFinId:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Int
[$sel:ticker:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Text
[$sel:fiscalPeriod:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> String
[$sel:fiscalYear:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Int
[$sel:reportDate:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Day
[$sel:publishDate:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Day
[$sel:restatedDate:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Day
[$sel:source:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Text
[$sel:tTM:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Bool
[$sel:valueCheck:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Bool
[$sel:totalInvestments:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:fixedIncomeTradingAFSAndShortTermInv:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:loansAndMortgages:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:fixedIncomeSecuritiesHTM:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:equitySecurities:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:realEstateInvestments:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:otherInvestments:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:cashCashEquivalentsAndShortTermInvestments:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:accountsAndNotesReceivable:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:propertyPlantAndEquipmentNet:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:deferredPolicyAcquisitionCosts:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:otherAssets:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:totalAssets:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:insuranceReserves:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:reserveForOutstandingClaimsAndLosses:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:premiumReserveUnearned:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:lifePolicyBenefits:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:otherInsuranceReserves:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:shortTermDebt:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:otherShortTermLiabilities:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:longTermDebt:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:pensionLiabilities:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:pensions:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:otherPostRetirementBenefits:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:otherLongTermLiabilities:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:fundsForFutureAppropriations:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:totalLiabilities:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:preferredEquity:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:policyholdersEquity:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:shareCapitalAndAdditionalPaidInCapital:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:commonStock:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:additionalPaidInCapital:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:otherShareCapital:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:treasuryStock:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:retainedEarnings:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:otherEquity:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:equityBeforeMinorityInterest:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:minorityInterest:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:totalEquity:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:totalLiabilitiesAndEquity:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
-- | Discrimination of balance sheet lists.
type IndustryBalanceSheets = Industry [GeneralBalanceSheetRow] [BankBalanceSheetRow] [InsuranceBalanceSheetRow]
-- | Discrimination of balance sheets.
type IndustryBalanceSheet = Industry GeneralBalanceSheetRow BankBalanceSheetRow InsuranceBalanceSheetRow
instance GHC.Show.Show SimFin.Types.BalanceSheet.GeneralBalanceSheetRow
instance GHC.Show.Show SimFin.Types.BalanceSheet.BankBalanceSheetRow
instance GHC.Show.Show SimFin.Types.BalanceSheet.InsuranceBalanceSheetRow
instance Data.Aeson.Types.FromJSON.FromJSON SimFin.Types.BalanceSheet.IndustryBalanceSheets
instance Data.Aeson.Types.FromJSON.FromJSON SimFin.Types.BalanceSheet.IndustryBalanceSheetsKeyed
instance Data.Aeson.Types.FromJSON.FromJSON SimFin.Types.BalanceSheet.InsuranceBalanceSheetsKeyed
instance Data.Aeson.Types.FromJSON.FromJSON SimFin.Types.BalanceSheet.InsuranceBalanceSheetRow
instance Data.Aeson.Types.FromJSON.FromJSON SimFin.Types.BalanceSheet.BankBalanceSheetsKeyed
instance Data.Aeson.Types.FromJSON.FromJSON SimFin.Types.BalanceSheet.BankBalanceSheetRow
instance Data.Aeson.Types.FromJSON.FromJSON SimFin.Types.BalanceSheet.GeneralBalanceSheetsKeyed
instance Data.Aeson.Types.FromJSON.FromJSON SimFin.Types.BalanceSheet.GeneralBalanceSheetRow
module SimFin.Types.ProfitAndLoss
-- | Cash flow statement for general companies.
data GeneralProfitAndLossRow
GeneralProfitAndLossRow :: Int -> Text -> String -> Int -> Day -> Day -> Day -> Text -> Bool -> Bool -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> GeneralProfitAndLossRow
[$sel:simFinId:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Int
[$sel:ticker:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Text
[$sel:fiscalPeriod:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> String
[$sel:fiscalYear:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Int
[$sel:reportDate:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Day
[$sel:publishDate:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Day
[$sel:restatedDate:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Day
[$sel:source:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Text
[$sel:tTM:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Bool
[$sel:valueCheck:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Bool
[$sel:revenue:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:salesAndServicesRevenue:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:financingRevenue:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:otherRevenue:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:costOfRevenue:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:costOfGoodsAndServices:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:costOfFinancingRevenue:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:costOfOtherRevenue:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:grossProfit:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:otherOperatingIncome:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:operatingExpenses:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:sellingGeneralAndAdministrative:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:sellingAndMarketing:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:generalAndAdministrative:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:researchAndDevelopment:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:depreciationAndAmortization:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:provisionForDoubtfulAccounts:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:otherOperatingExpenses:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:operatingIncomeLoss:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:nonOperatingIncomeLoss:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:interestExpenseNet:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:interestExpense:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:interestIncome:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:otherInvestmentIncomeLoss:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:foreignExchangeGainLoss:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:incomeLossFromAffiliates:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:otherNonOperatingIncomeLoss:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:pretaxIncomeLossAdj:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:abnormalGainsLosses:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:acquiredInProcessRAndD:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:mergerAndAcquisitionExpense:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:abnormalDerivatives:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:disposalOfAssets:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:earlyExtinguishmentOfDebt:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:assetWriteDown:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:impairmentOfGoodwillAndIntangibles:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:saleOfBusiness:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:legalSettlement:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:restructuringCharges:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:saleOfInvestmentsAndUnrealizedInvestments:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:insuranceSettlement:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:otherAbnormalItems:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:pretaxIncomeLoss:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:incomeTaxExpenseBenefitNet:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:currentIncomeTax:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:deferredIncomeTax:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:taxAllowanceCredit:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:incomeLossFromAffiliatesNetOfTaxes:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:incomeLossFromContinuingOperations:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:netExtraordinaryGainsLosses:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:discontinuedOperations:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:accountingChargesAndOther:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:incomeLossInclMinorityInterest:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:minorityInterest:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:netIncome:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:preferredDividends:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:otherAdjustments:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:netIncomeCommon:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
-- | Cash flow statement for banks.
data BankProfitAndLossRow
BankProfitAndLossRow :: Int -> Text -> String -> Int -> Day -> Day -> Day -> Text -> Bool -> Bool -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> BankProfitAndLossRow
[$sel:simFinId:BankProfitAndLossRow] :: BankProfitAndLossRow -> Int
[$sel:ticker:BankProfitAndLossRow] :: BankProfitAndLossRow -> Text
[$sel:fiscalPeriod:BankProfitAndLossRow] :: BankProfitAndLossRow -> String
[$sel:fiscalYear:BankProfitAndLossRow] :: BankProfitAndLossRow -> Int
[$sel:reportDate:BankProfitAndLossRow] :: BankProfitAndLossRow -> Day
[$sel:publishDate:BankProfitAndLossRow] :: BankProfitAndLossRow -> Day
[$sel:restatedDate:BankProfitAndLossRow] :: BankProfitAndLossRow -> Day
[$sel:source:BankProfitAndLossRow] :: BankProfitAndLossRow -> Text
[$sel:tTM:BankProfitAndLossRow] :: BankProfitAndLossRow -> Bool
[$sel:valueCheck:BankProfitAndLossRow] :: BankProfitAndLossRow -> Bool
[$sel:revenue:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:netInterestIncome:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:totalInterestIncome:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:totalInterestExpense:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:totalNonInterestIncome:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:tradingAccountProfitsLosses:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:investmentIncomeLoss:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:saleOfLoanIncomeLoss:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:commissionsAndFeesEarned:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:netOTTILossesRecognisedInEarnings:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:otherNonInterestIncome:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:provisionForLoanLosses:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:netRevenueAfterProvisions:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:totalNonInterestExpense:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:commissionsAndFeesPaid:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:otherOperatingExpenses:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:operatingIncomeLoss:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:nonOperatingIncomeLoss:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:incomeLossFromAffiliates:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:otherNonOperatingIncomeLoss:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:pretaxIncomeLossAdj:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:abnormalGainsLosses:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:debtValuationAdjustment:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:creditValuationAdjustment:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:mergerAndAcquisitionExpense:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:disposalOfAssets:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:earlyExtinguishmentOfDebt:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:assetWriteDown:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:impairmentOfGoodwillAndIntangibles:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:saleOfBusiness:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:legalSettlement:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:restructuringCharges:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:otherAbnormalItems:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:pretaxIncomeLoss:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:incomeTaxExpenseBenefitNet:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:currentIncomeTax:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:deferredIncomeTax:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:taxAllowanceCredit:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:incomeLossFromAffiliatesNetOfTaxes:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:incomeLossFromContinuingOperations:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:netExtraordinaryGainsLosses:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:discontinuedOperations:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:accountingChargesAndOther:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:incomeLossInclMinorityInterest:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:minorityInterest:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:netIncome:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:preferredDividends:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:otherAdjustments:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:netIncomeCommon:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
-- | Cash flow statement for insurance companies.
data InsuranceProfitAndLossRow
InsuranceProfitAndLossRow :: Int -> Text -> String -> Int -> Day -> Day -> Day -> Text -> Bool -> Bool -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> InsuranceProfitAndLossRow
[$sel:simFinId:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Int
[$sel:ticker:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Text
[$sel:fiscalPeriod:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> String
[$sel:fiscalYear:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Int
[$sel:reportDate:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Day
[$sel:publishDate:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Day
[$sel:restatedDate:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Day
[$sel:source:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Text
[$sel:tTM:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Bool
[$sel:valueCheck:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Bool
[$sel:revenue:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:netPremiumsEarned:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:investmentIncomeLoss:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:incomeFromRealEstate:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:otherOperatingIncome:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:policyChargesAndFees:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:totalRealizedInvestmentGains:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:totalOTTIRealized:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:otherRealizedInvestmentGains:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:otherIncome:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:totalClaimsAndLosses:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:claimsAndLosses:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:longTermCharges:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:otherClaimsAndLosses:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:underwritingExpenseAndAcquisitionCost:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:otherOperatingExpenses:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:operatingIncomeLoss:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:nonOperatingIncomeLoss:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:incomeLossFromAffiliates:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:interestExpenseNet:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:otherNonOperatingIncomeLoss:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:pretaxIncomeLossAdj:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:abnormalGainsLosses:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:mergerAndAcquisitionExpense:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:abnormalDerivatives:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:disposalOfAssets:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:earlyExtinguishmentOfDebt:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:assetWriteDown:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:impairmentOfGoodwillAndIntangibles:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:saleOfBusiness:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:legalSettlement:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:restructuringCharges:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:netInvestmentLosses:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:foreignExchange:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:otherAbnormalItems:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:pretaxIncomeLoss:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:incomeTaxExpenseBenefitNet:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:currentIncomeTax:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:deferredIncomeTax:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:taxAllowanceCredit:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:incomeLossFromAffiliatesNetOfTaxes:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:incomeLossFromContinuingOperations:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:netExtraordinaryGainsLosses:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:discontinuedOperations:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:accountingChargesAndOther:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:incomeLossInclMinorityInterest:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:minorityInterest:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:netIncome:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:preferredDividends:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:otherAdjustments:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:netIncomeCommon:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
-- | Discrimination of profit and loss lists.
type IndustryProfitsAndLosses = Industry [GeneralProfitAndLossRow] [BankProfitAndLossRow] [InsuranceProfitAndLossRow]
-- | Discrimination of profit and losses.
type IndustryProfitAndLoss = Industry GeneralProfitAndLossRow BankProfitAndLossRow InsuranceProfitAndLossRow
instance GHC.Show.Show SimFin.Types.ProfitAndLoss.GeneralProfitAndLossRow
instance GHC.Show.Show SimFin.Types.ProfitAndLoss.BankProfitAndLossRow
instance GHC.Show.Show SimFin.Types.ProfitAndLoss.InsuranceProfitAndLossRow
instance Data.Aeson.Types.FromJSON.FromJSON SimFin.Types.ProfitAndLoss.IndustryProfitsAndLosses
instance Data.Aeson.Types.FromJSON.FromJSON SimFin.Types.ProfitAndLoss.IndustryProfitsAndLossesKeyed
instance Data.Aeson.Types.FromJSON.FromJSON SimFin.Types.ProfitAndLoss.InsuranceProfitsAndLossesKeyed
instance Data.Aeson.Types.FromJSON.FromJSON SimFin.Types.ProfitAndLoss.InsuranceProfitAndLossRow
instance Data.Aeson.Types.FromJSON.FromJSON SimFin.Types.ProfitAndLoss.BankProfitsAndLossesKeyed
instance Data.Aeson.Types.FromJSON.FromJSON SimFin.Types.ProfitAndLoss.BankProfitAndLossRow
instance Data.Aeson.Types.FromJSON.FromJSON SimFin.Types.ProfitAndLoss.GeneralProfitsAndLossesKeyed
instance Data.Aeson.Types.FromJSON.FromJSON SimFin.Types.ProfitAndLoss.GeneralProfitAndLossRow
module SimFin.Types.StockRef
-- | A stock ref is a SimSin ID or a ticker.
data StockRef
SimFinId :: Int -> StockRef
Ticker :: Text -> StockRef
-- | Convert one or more stock references into a list of query parameters.
stockRefsToQueryParams :: NonEmpty StockRef -> [QueryParam]
instance GHC.Show.Show SimFin.Types.StockRef.StockRef
instance Data.String.IsString SimFin.Types.StockRef.StockRef
module SimFin.Types.StatementQuery
-- | This represents all options the statement endpoint supports, minus the
-- "statement" parameter itself, which is set by simply calling the right
-- function. Some of these parameters are only available to SimFin+
-- users. For free users, please use StatementQueryFree. If you
-- provide a zero-length list for any field, the query parameter will be
-- omitted, and the API will try to return all relevant available
-- statements.
data StatementQuery
StatementQuery :: NonEmpty StockRef -> [FiscalPeriod] -> [Int] -> Maybe Day -> Maybe Day -> Bool -> Bool -> Bool -> StatementQuery
[$sel:stockRefs:StatementQuery] :: StatementQuery -> NonEmpty StockRef
[$sel:periods:StatementQuery] :: StatementQuery -> [FiscalPeriod]
[$sel:years:StatementQuery] :: StatementQuery -> [Int]
[$sel:start:StatementQuery] :: StatementQuery -> Maybe Day
[$sel:end:StatementQuery] :: StatementQuery -> Maybe Day
[$sel:ttm:StatementQuery] :: StatementQuery -> Bool
[$sel:asReported:StatementQuery] :: StatementQuery -> Bool
[$sel:shares:StatementQuery] :: StatementQuery -> Bool
-- | This is a subset of the StatementQuery type, which models the
-- parameters available to non-SimFin+ users.
data StatementQueryFree
StatementQueryFree :: StockRef -> FiscalPeriod -> Int -> Bool -> StatementQueryFree
[$sel:stockRef:StatementQueryFree] :: StatementQueryFree -> StockRef
[$sel:period:StatementQueryFree] :: StatementQueryFree -> FiscalPeriod
[$sel:year:StatementQueryFree] :: StatementQueryFree -> Int
[$sel:ttm:StatementQueryFree] :: StatementQueryFree -> Bool
-- | Turn a StatementQuery into query parameters for the SimFin
-- "statements" endpoint.
statementQueryToQueryParams :: StatementQuery -> [QueryParam]
-- | Turn a StatementQueryFree into query parameters for the SimFin
-- "statements" endpoint.
statementQueryFreeToQueryParams :: StatementQueryFree -> [QueryParam]
instance GHC.Show.Show SimFin.Types.StatementQuery.StatementQuery
module SimFin.Types.PricesQuery
-- | This represents all options the prices endpoint supports. Some of
-- these parameters are only available to SimFin+ users. For free users,
-- please use PricesQueryFree.
data PricesQuery
PricesQuery :: NonEmpty StockRef -> Maybe Day -> Maybe Day -> Bool -> PricesQuery
[$sel:stockRefs:PricesQuery] :: PricesQuery -> NonEmpty StockRef
[$sel:start:PricesQuery] :: PricesQuery -> Maybe Day
[$sel:end:PricesQuery] :: PricesQuery -> Maybe Day
[$sel:asReported:PricesQuery] :: PricesQuery -> Bool
-- | Represents all the parameters available to free users.
type PricesQueryFree = StockRef
-- | Turn a PricesQuery into query parameters for the SimFin
-- "prices" endpoint.
pricesQueryToQueryParams :: PricesQuery -> [QueryParam]
-- | Turn a PricesQueryFree into query parameters for the SimFin
-- "prices" endpoint.
pricesQueryFreeToQueryParams :: PricesQueryFree -> [QueryParam]
instance GHC.Show.Show SimFin.Types.PricesQuery.PricesQuery
module SimFin.Types.StringFrac
-- | Wrapper that parses the string '"1.23"' and the number '1.23' the
-- same. Uses the read instance for the String, and
-- realToFrac (Scientific -> a) for the number.
newtype StringFrac a
StringFrac :: a -> StringFrac a
[unStringFrac] :: StringFrac a -> a
instance GHC.Show.Show a => GHC.Show.Show (SimFin.Types.StringFrac.StringFrac a)
instance (GHC.Read.Read a, GHC.Real.RealFrac a) => Data.Aeson.Types.FromJSON.FromJSON (SimFin.Types.StringFrac.StringFrac a)
module SimFin.Types.Ratios
-- | Record modelling the extra data returned by calling the share price
-- API endpoint with the "&ratios" query parameter. See the SimFin
-- docs.
data RatiosRow a
RatiosRow :: Integer -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> RatiosRow a
[$sel:marketCap:RatiosRow] :: RatiosRow a -> Integer
[$sel:priceToEarningsRatioQuarterly:RatiosRow] :: RatiosRow a -> Maybe a
[$sel:priceToEarningsRatioTTM:RatiosRow] :: RatiosRow a -> Maybe a
[$sel:priceToSalesRatioQuarterly:RatiosRow] :: RatiosRow a -> Maybe a
[$sel:priceToSalesRatioTTM:RatiosRow] :: RatiosRow a -> Maybe a
[$sel:priceToBookValueTTM:RatiosRow] :: RatiosRow a -> Maybe a
[$sel:priceToFreeCashFlowQuarterly:RatiosRow] :: RatiosRow a -> Maybe a
[$sel:priceToFreeCashFlowTTM:RatiosRow] :: RatiosRow a -> Maybe a
[$sel:enterpriseValueTTM:RatiosRow] :: RatiosRow a -> Maybe a
[$sel:eVEBITDATTM:RatiosRow] :: RatiosRow a -> Maybe a
[$sel:eVSalesTTM:RatiosRow] :: RatiosRow a -> Maybe a
[$sel:eVFCFTTM:RatiosRow] :: RatiosRow a -> Maybe a
[$sel:bookToMarketValueTTM:RatiosRow] :: RatiosRow a -> Maybe a
[$sel:operatingIncomeEVTTM:RatiosRow] :: RatiosRow a -> Maybe a
instance GHC.Show.Show a => GHC.Show.Show (SimFin.Types.Ratios.RatiosRow a)
instance GHC.Base.Functor SimFin.Types.Ratios.RatiosRow
instance (GHC.Read.Read a, GHC.Real.RealFrac a) => Data.Aeson.Types.FromJSON.FromJSON (SimFin.Types.Ratios.RatiosRow a)
module SimFin.Types.Prices
-- | Prices of a company over a single day.
data PricesRow a
PricesRow :: Int -> Text -> Maybe Day -> a -> a -> a -> a -> a -> Integer -> Maybe a -> Maybe Integer -> PricesRow a
[$sel:simFinId:PricesRow] :: PricesRow a -> Int
[$sel:ticker:PricesRow] :: PricesRow a -> Text
[$sel:date:PricesRow] :: PricesRow a -> Maybe Day
[$sel:open:PricesRow] :: PricesRow a -> a
[$sel:high:PricesRow] :: PricesRow a -> a
[$sel:low:PricesRow] :: PricesRow a -> a
[$sel:close:PricesRow] :: PricesRow a -> a
[$sel:adjClose:PricesRow] :: PricesRow a -> a
[$sel:volume:PricesRow] :: PricesRow a -> Integer
[$sel:dividend:PricesRow] :: PricesRow a -> Maybe a
[$sel:commonSharesOutstanding:PricesRow] :: PricesRow a -> Maybe Integer
-- | Wrapper to parse a PricesRow record from SimFin's JSON format.
newtype PricesKeyed a
PricesKeyed :: [PricesRow a] -> PricesKeyed a
[$sel:unKeyPrices:PricesKeyed] :: PricesKeyed a -> [PricesRow a]
instance GHC.Show.Show a => GHC.Show.Show (SimFin.Types.Prices.PricesRow a)
instance GHC.Base.Functor SimFin.Types.Prices.PricesRow
instance (GHC.Read.Read a, GHC.Real.RealFrac a) => Data.Aeson.Types.FromJSON.FromJSON (SimFin.Types.Prices.PricesKeyed a)
instance (GHC.Read.Read a, GHC.Real.RealFrac a) => Data.Aeson.Types.FromJSON.FromJSON (SimFin.Types.Prices.PricesRow a)
module SimFin.Types.PricesAndRatios
-- | Represents a company's prices and ratios.
data PricesAndRatiosRow a
PricesAndRatiosRow :: PricesRow a -> RatiosRow a -> PricesAndRatiosRow a
[$sel:prices:PricesAndRatiosRow] :: PricesAndRatiosRow a -> PricesRow a
[$sel:ratios:PricesAndRatiosRow] :: PricesAndRatiosRow a -> RatiosRow a
-- | Wrapper to parse a PricesAndRatiosRow record from SimFin's JSON
-- format. You probably don't want to use this.
newtype PricesAndRatiosKeyed a
PricesAndRatiosKeyed :: [PricesAndRatiosRow a] -> PricesAndRatiosKeyed a
[$sel:unKeyPricesAndRatios:PricesAndRatiosKeyed] :: PricesAndRatiosKeyed a -> [PricesAndRatiosRow a]
instance GHC.Show.Show a => GHC.Show.Show (SimFin.Types.PricesAndRatios.PricesAndRatiosRow a)
instance GHC.Base.Functor SimFin.Types.PricesAndRatios.PricesAndRatiosRow
instance (GHC.Read.Read a, GHC.Real.RealFrac a) => Data.Aeson.Types.FromJSON.FromJSON (SimFin.Types.PricesAndRatios.PricesAndRatiosKeyed a)
instance (GHC.Read.Read a, GHC.Real.RealFrac a) => Data.Aeson.Types.FromJSON.FromJSON (SimFin.Types.PricesAndRatios.PricesAndRatiosRow a)
module SimFin.Types.Derived
-- | Cash flow statement for general companies.
data DerivedRow a
DerivedRow :: Int -> Text -> FiscalPeriod -> Int -> Day -> Day -> Day -> Text -> Bool -> Bool -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe Int -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> DerivedRow a
[simFinId] :: DerivedRow a -> Int
[ticker] :: DerivedRow a -> Text
[fiscalPeriod] :: DerivedRow a -> FiscalPeriod
[fiscalYear] :: DerivedRow a -> Int
[reportDate] :: DerivedRow a -> Day
[publishDate] :: DerivedRow a -> Day
[restatedDate] :: DerivedRow a -> Day
[source] :: DerivedRow a -> Text
[tTM] :: DerivedRow a -> Bool
[valueCheck] :: DerivedRow a -> Bool
[eBITDA] :: DerivedRow a -> Maybe a
[totalDebt] :: DerivedRow a -> Maybe a
[freeCashFlow] :: DerivedRow a -> Maybe a
[grossProfitMargin] :: DerivedRow a -> Maybe a
[operatingMargin] :: DerivedRow a -> Maybe a
[netProfitMargin] :: DerivedRow a -> Maybe a
[returnOnEquity] :: DerivedRow a -> Maybe a
[returnOnAssets] :: DerivedRow a -> Maybe a
[freeCashFlowToNetIncome] :: DerivedRow a -> Maybe a
[currentRatio] :: DerivedRow a -> Maybe a
[liabilitiesToEquityRatio] :: DerivedRow a -> Maybe a
[debtRatio] :: DerivedRow a -> Maybe a
[earningsPerShareBasic] :: DerivedRow a -> Maybe a
[earningsPerShareDiluted] :: DerivedRow a -> Maybe a
[salesPerShare] :: DerivedRow a -> Maybe a
[equityPerShare] :: DerivedRow a -> Maybe a
[freeCashFlowPerShare] :: DerivedRow a -> Maybe a
[dividendsPerShare] :: DerivedRow a -> Maybe a
[piotroskiFScore] :: DerivedRow a -> Maybe Int
[returnOnInvestedCapital] :: DerivedRow a -> Maybe a
[cashReturnOnInvestedCapital] :: DerivedRow a -> Maybe a
[dividendPayoutRatio] :: DerivedRow a -> Maybe a
[netDebtEBITDA] :: DerivedRow a -> Maybe a
[netDebtEBIT] :: DerivedRow a -> Maybe a
-- | Wrapper to parse a DerivedRow record from SimFin's JSON format.
newtype DerivedRowsKeyed a
DerivedRowsKeyed :: [DerivedRow a] -> DerivedRowsKeyed a
[unDerivedRows] :: DerivedRowsKeyed a -> [DerivedRow a]
instance GHC.Show.Show a => GHC.Show.Show (SimFin.Types.Derived.DerivedRow a)
instance GHC.Base.Functor SimFin.Types.Derived.DerivedRow
instance (GHC.Read.Read a, GHC.Real.RealFrac a) => Data.Aeson.Types.FromJSON.FromJSON (SimFin.Types.Derived.DerivedRowsKeyed a)
instance (GHC.Read.Read a, GHC.Real.RealFrac a) => Data.Aeson.Types.FromJSON.FromJSON (SimFin.Types.Derived.DerivedRow a)
module SimFin.Util
-- | Try to make a new http-client manager, and parse your api key from
-- apiKeyEnvVariable.
createDefaultContext :: (MonadFail m, MonadIO m) => m SimFinContext
-- | The environment variable createDefaultContext will try to get
-- your API key from.
apiKeyEnvVariable :: String
module SimFin.Plus
-- | The context needed to call every fetch* function.
data SimFinContext
SimFinContext :: ByteString -> Manager -> SimFinContext
[simFinApiKey] :: SimFinContext -> ByteString
[simFinManager] :: SimFinContext -> Manager
-- | Distinguish between different industry-specific data.
data Industry general bank insurance
General :: general -> Industry general bank insurance
Bank :: bank -> Industry general bank insurance
Insurance :: insurance -> Industry general bank insurance
-- | SimFin ID and company ticker. See the SimFin docs.
data CompanyListingRow
CompanyListingRow :: Int -> Text -> CompanyListingRow
[$sel:simFinId:CompanyListingRow] :: CompanyListingRow -> Int
[$sel:ticker:CompanyListingRow] :: CompanyListingRow -> Text
-- | Genreal information about a company. See the SimFin docs.
data CompanyInfoRow
CompanyInfoRow :: Int -> Text -> Text -> Int -> Int -> Int -> Text -> CompanyInfoRow
[$sel:simFinId:CompanyInfoRow] :: CompanyInfoRow -> Int
[$sel:ticker:CompanyInfoRow] :: CompanyInfoRow -> Text
[$sel:companyName:CompanyInfoRow] :: CompanyInfoRow -> Text
[$sel:industryId:CompanyInfoRow] :: CompanyInfoRow -> Int
[$sel:monthFYEnd:CompanyInfoRow] :: CompanyInfoRow -> Int
[$sel:numberEmployees:CompanyInfoRow] :: CompanyInfoRow -> Int
[$sel:businessSummary:CompanyInfoRow] :: CompanyInfoRow -> Text
-- | Balance sheet statement for general companies.
data GeneralBalanceSheetRow
GeneralBalanceSheetRow :: Int -> Text -> String -> Int -> Day -> Day -> Day -> Text -> Bool -> Bool -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> GeneralBalanceSheetRow
[$sel:simFinId:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Int
[$sel:ticker:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Text
[$sel:fiscalPeriod:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> String
[$sel:fiscalYear:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Int
[$sel:reportDate:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Day
[$sel:publishDate:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Day
[$sel:restatedDate:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Day
[$sel:source:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Text
[$sel:tTM:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Bool
[$sel:valueCheck:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Bool
[$sel:cashCashEquivalentsAndShortTermInvestments:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:cashAndCashEquivalents:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:shortTermInvestments:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:accountsAndNotesReceivable:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:accountsReceivableNet:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:notesReceivableNet:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:unbilledRevenues:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:inventories:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:rawMaterials:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:workInProcess:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:finishedGoods:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:otherInventory:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:otherShortTermAssets:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:prepaidExpenses:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:derivativeAndHedgingAssetsShortTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:assetsHeldForSale:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:deferredTaxAssetsShortTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:incomeTaxesReceivable:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:discontinuedOperationsShortTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:miscShortTermAssets:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:totalCurrentAssets:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:propertyPlantAndEquipmentNet:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:propertyPlantAndEquipment:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:accumulatedDepreciation:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:longTermInvestmentsAndReceivables:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:longTermInvestments:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:longTermMarketableSecurities:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:longTermReceivables:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:otherLongTermAssets:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:intangibleAssets:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:goodwill:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:otherIntangibleAssets:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:prepaidExpense:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:deferredTaxAssetsLongTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:derivativeAndHedgingAssetsLongTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:prepaidPensionCosts:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:discontinuedOperationsLongTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:investmentsinAffiliates:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:miscLongTermAssets:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:totalNoncurrentAssets:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:totalAssets:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:payablesAndAccruals:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:accountsPayable:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:accruedTaxes:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:interestAndDividendsPayable:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:otherPayablesAndAccruals:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:shortTermDebt:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:shortTermBorrowings:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:shortTermCapitalLeases:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:currentPortionOfLongTermDebt:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:otherShortTermLiabilities:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:deferredRevenueShortTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:liabilitiesfromDerivativesAndHedgingShortTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:deferredTaxLiabilitiesShortTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:liabilitiesfromDiscontinuedOperationsShortTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:miscShortTermLiabilities:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:totalCurrentLiabilities:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:longTermDebt:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:longTermBorrowings:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:longTermCapitalLeases:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:otherLongTermLiabilities:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:accruedLiabilities:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:pensionLiabilities:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:pensions:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:otherPostRetirementBenefits:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:deferredCompensation:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:deferredRevenueLongTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:deferredTaxLiabilitiesLongTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:liabilitiesfromDerivativesAndHedgingLongTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:liabilitiesfromDiscontinuedOperationsLongTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:miscLongTermLiabilities:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:totalNoncurrentLiabilities:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:totalLiabilities:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:preferredEquity:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:shareCapitalAndAdditionalPaidInCapital:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:commonStock:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:additionalPaidinCapital:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:otherShareCapital:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:treasuryStock:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:retainedEarnings:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:otherEquity:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:equityBeforeMinorityInterest:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:minorityInterest:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:totalEquity:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:totalLiabilitiesAndEquity:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
-- | Balance sheet statement for banks.
data BankBalanceSheetRow
BankBalanceSheetRow :: Int -> Text -> String -> Int -> Day -> Day -> Day -> Text -> Bool -> Bool -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> BankBalanceSheetRow
[$sel:simFinId:BankBalanceSheetRow] :: BankBalanceSheetRow -> Int
[$sel:ticker:BankBalanceSheetRow] :: BankBalanceSheetRow -> Text
[$sel:fiscalPeriod:BankBalanceSheetRow] :: BankBalanceSheetRow -> String
[$sel:fiscalYear:BankBalanceSheetRow] :: BankBalanceSheetRow -> Int
[$sel:reportDate:BankBalanceSheetRow] :: BankBalanceSheetRow -> Day
[$sel:publishDate:BankBalanceSheetRow] :: BankBalanceSheetRow -> Day
[$sel:restatedDate:BankBalanceSheetRow] :: BankBalanceSheetRow -> Day
[$sel:source:BankBalanceSheetRow] :: BankBalanceSheetRow -> Text
[$sel:tTM:BankBalanceSheetRow] :: BankBalanceSheetRow -> Bool
[$sel:valueCheck:BankBalanceSheetRow] :: BankBalanceSheetRow -> Bool
[$sel:cashCashEquivalentsAndShortTermInvestments:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:interbankAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:fedFundsSoldAndRepos:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherInterbankAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:shortAndLongTermInvestments:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:tradingSecurities:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:investmentSecuritiesAvailableforSale:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:investmentSecuritiesHeldtoMaturity:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:realEstateInvestments:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherInvestments:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:accountsAndNotesReceivable:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:netLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:reserveforLoanLosses:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:totalLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:totalCommercialLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:commercialRealEstateLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherCommercialLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:totalConsumerLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:creditCardLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:homeEquityLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:familyResidentialLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:autoLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:studentLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherConsumerLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:netFixedAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:propertyPlantAndEquipmentNet:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:operatingLeaseAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherFixedAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:intangibleAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:goodwill:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherIntangibleAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:investmentsInAssociates:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:deferredTaxAssetsShortTerm:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:derivativesAndHedgingAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:discontinuedOperationsAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:customerAcceptancesAndLiabilities:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:totalAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:totalDeposits:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:demandDeposits:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:interestBearingDeposits:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:savingDeposits:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:timeDeposits:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherDeposits:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:shortTermDebt:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:securitiesSoldUnderRepo:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:tradingAccountLiabilities:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:shortTermCapitalLeases:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:currentPortionofLongTermDebt:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:shortTermBorrowings:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:payablesBrokerDealers:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:longTermDebt:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:longTermCapitalLeases:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:longTermBorrowings:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:pensionLiabilities:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:pensions:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherPostRetirementBenefits:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:deferredTaxLiabilitiesShortTerm:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:derivativesAndHedgingLiabilities:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:discontinuedOperationsLiabilities:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherLiabilities:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:totalLiabilities:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:preferredEquity:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:shareCapitalAndAdditionalPaidInCapital:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:commonStock:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:additionalPaidInCapital:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherShareCapital:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:treasuryStock:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:retainedEarnings:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherEquity:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:equityBeforeMinorityInterest:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:minorityInterest:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:totalEquity:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:totalLiabilitiesAndEquity:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
-- | Balance sheet statement for insurance companies.
data InsuranceBalanceSheetRow
InsuranceBalanceSheetRow :: Int -> Text -> String -> Int -> Day -> Day -> Day -> Text -> Bool -> Bool -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> InsuranceBalanceSheetRow
[$sel:simFinId:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Int
[$sel:ticker:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Text
[$sel:fiscalPeriod:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> String
[$sel:fiscalYear:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Int
[$sel:reportDate:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Day
[$sel:publishDate:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Day
[$sel:restatedDate:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Day
[$sel:source:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Text
[$sel:tTM:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Bool
[$sel:valueCheck:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Bool
[$sel:totalInvestments:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:fixedIncomeTradingAFSAndShortTermInv:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:loansAndMortgages:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:fixedIncomeSecuritiesHTM:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:equitySecurities:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:realEstateInvestments:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:otherInvestments:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:cashCashEquivalentsAndShortTermInvestments:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:accountsAndNotesReceivable:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:propertyPlantAndEquipmentNet:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:deferredPolicyAcquisitionCosts:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:otherAssets:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:totalAssets:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:insuranceReserves:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:reserveForOutstandingClaimsAndLosses:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:premiumReserveUnearned:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:lifePolicyBenefits:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:otherInsuranceReserves:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:shortTermDebt:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:otherShortTermLiabilities:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:longTermDebt:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:pensionLiabilities:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:pensions:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:otherPostRetirementBenefits:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:otherLongTermLiabilities:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:fundsForFutureAppropriations:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:totalLiabilities:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:preferredEquity:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:policyholdersEquity:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:shareCapitalAndAdditionalPaidInCapital:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:commonStock:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:additionalPaidInCapital:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:otherShareCapital:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:treasuryStock:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:retainedEarnings:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:otherEquity:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:equityBeforeMinorityInterest:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:minorityInterest:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:totalEquity:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:totalLiabilitiesAndEquity:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
-- | Cash flow statement for general companies.
data GeneralProfitAndLossRow
GeneralProfitAndLossRow :: Int -> Text -> String -> Int -> Day -> Day -> Day -> Text -> Bool -> Bool -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> GeneralProfitAndLossRow
[$sel:simFinId:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Int
[$sel:ticker:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Text
[$sel:fiscalPeriod:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> String
[$sel:fiscalYear:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Int
[$sel:reportDate:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Day
[$sel:publishDate:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Day
[$sel:restatedDate:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Day
[$sel:source:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Text
[$sel:tTM:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Bool
[$sel:valueCheck:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Bool
[$sel:revenue:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:salesAndServicesRevenue:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:financingRevenue:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:otherRevenue:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:costOfRevenue:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:costOfGoodsAndServices:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:costOfFinancingRevenue:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:costOfOtherRevenue:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:grossProfit:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:otherOperatingIncome:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:operatingExpenses:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:sellingGeneralAndAdministrative:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:sellingAndMarketing:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:generalAndAdministrative:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:researchAndDevelopment:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:depreciationAndAmortization:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:provisionForDoubtfulAccounts:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:otherOperatingExpenses:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:operatingIncomeLoss:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:nonOperatingIncomeLoss:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:interestExpenseNet:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:interestExpense:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:interestIncome:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:otherInvestmentIncomeLoss:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:foreignExchangeGainLoss:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:incomeLossFromAffiliates:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:otherNonOperatingIncomeLoss:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:pretaxIncomeLossAdj:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:abnormalGainsLosses:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:acquiredInProcessRAndD:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:mergerAndAcquisitionExpense:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:abnormalDerivatives:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:disposalOfAssets:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:earlyExtinguishmentOfDebt:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:assetWriteDown:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:impairmentOfGoodwillAndIntangibles:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:saleOfBusiness:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:legalSettlement:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:restructuringCharges:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:saleOfInvestmentsAndUnrealizedInvestments:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:insuranceSettlement:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:otherAbnormalItems:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:pretaxIncomeLoss:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:incomeTaxExpenseBenefitNet:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:currentIncomeTax:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:deferredIncomeTax:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:taxAllowanceCredit:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:incomeLossFromAffiliatesNetOfTaxes:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:incomeLossFromContinuingOperations:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:netExtraordinaryGainsLosses:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:discontinuedOperations:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:accountingChargesAndOther:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:incomeLossInclMinorityInterest:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:minorityInterest:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:netIncome:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:preferredDividends:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:otherAdjustments:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:netIncomeCommon:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
-- | Cash flow statement for banks.
data BankProfitAndLossRow
BankProfitAndLossRow :: Int -> Text -> String -> Int -> Day -> Day -> Day -> Text -> Bool -> Bool -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> BankProfitAndLossRow
[$sel:simFinId:BankProfitAndLossRow] :: BankProfitAndLossRow -> Int
[$sel:ticker:BankProfitAndLossRow] :: BankProfitAndLossRow -> Text
[$sel:fiscalPeriod:BankProfitAndLossRow] :: BankProfitAndLossRow -> String
[$sel:fiscalYear:BankProfitAndLossRow] :: BankProfitAndLossRow -> Int
[$sel:reportDate:BankProfitAndLossRow] :: BankProfitAndLossRow -> Day
[$sel:publishDate:BankProfitAndLossRow] :: BankProfitAndLossRow -> Day
[$sel:restatedDate:BankProfitAndLossRow] :: BankProfitAndLossRow -> Day
[$sel:source:BankProfitAndLossRow] :: BankProfitAndLossRow -> Text
[$sel:tTM:BankProfitAndLossRow] :: BankProfitAndLossRow -> Bool
[$sel:valueCheck:BankProfitAndLossRow] :: BankProfitAndLossRow -> Bool
[$sel:revenue:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:netInterestIncome:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:totalInterestIncome:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:totalInterestExpense:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:totalNonInterestIncome:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:tradingAccountProfitsLosses:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:investmentIncomeLoss:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:saleOfLoanIncomeLoss:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:commissionsAndFeesEarned:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:netOTTILossesRecognisedInEarnings:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:otherNonInterestIncome:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:provisionForLoanLosses:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:netRevenueAfterProvisions:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:totalNonInterestExpense:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:commissionsAndFeesPaid:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:otherOperatingExpenses:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:operatingIncomeLoss:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:nonOperatingIncomeLoss:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:incomeLossFromAffiliates:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:otherNonOperatingIncomeLoss:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:pretaxIncomeLossAdj:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:abnormalGainsLosses:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:debtValuationAdjustment:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:creditValuationAdjustment:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:mergerAndAcquisitionExpense:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:disposalOfAssets:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:earlyExtinguishmentOfDebt:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:assetWriteDown:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:impairmentOfGoodwillAndIntangibles:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:saleOfBusiness:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:legalSettlement:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:restructuringCharges:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:otherAbnormalItems:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:pretaxIncomeLoss:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:incomeTaxExpenseBenefitNet:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:currentIncomeTax:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:deferredIncomeTax:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:taxAllowanceCredit:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:incomeLossFromAffiliatesNetOfTaxes:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:incomeLossFromContinuingOperations:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:netExtraordinaryGainsLosses:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:discontinuedOperations:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:accountingChargesAndOther:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:incomeLossInclMinorityInterest:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:minorityInterest:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:netIncome:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:preferredDividends:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:otherAdjustments:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:netIncomeCommon:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
-- | Cash flow statement for insurance companies.
data InsuranceProfitAndLossRow
InsuranceProfitAndLossRow :: Int -> Text -> String -> Int -> Day -> Day -> Day -> Text -> Bool -> Bool -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> InsuranceProfitAndLossRow
[$sel:simFinId:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Int
[$sel:ticker:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Text
[$sel:fiscalPeriod:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> String
[$sel:fiscalYear:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Int
[$sel:reportDate:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Day
[$sel:publishDate:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Day
[$sel:restatedDate:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Day
[$sel:source:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Text
[$sel:tTM:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Bool
[$sel:valueCheck:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Bool
[$sel:revenue:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:netPremiumsEarned:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:investmentIncomeLoss:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:incomeFromRealEstate:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:otherOperatingIncome:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:policyChargesAndFees:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:totalRealizedInvestmentGains:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:totalOTTIRealized:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:otherRealizedInvestmentGains:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:otherIncome:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:totalClaimsAndLosses:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:claimsAndLosses:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:longTermCharges:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:otherClaimsAndLosses:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:underwritingExpenseAndAcquisitionCost:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:otherOperatingExpenses:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:operatingIncomeLoss:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:nonOperatingIncomeLoss:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:incomeLossFromAffiliates:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:interestExpenseNet:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:otherNonOperatingIncomeLoss:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:pretaxIncomeLossAdj:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:abnormalGainsLosses:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:mergerAndAcquisitionExpense:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:abnormalDerivatives:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:disposalOfAssets:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:earlyExtinguishmentOfDebt:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:assetWriteDown:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:impairmentOfGoodwillAndIntangibles:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:saleOfBusiness:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:legalSettlement:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:restructuringCharges:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:netInvestmentLosses:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:foreignExchange:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:otherAbnormalItems:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:pretaxIncomeLoss:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:incomeTaxExpenseBenefitNet:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:currentIncomeTax:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:deferredIncomeTax:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:taxAllowanceCredit:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:incomeLossFromAffiliatesNetOfTaxes:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:incomeLossFromContinuingOperations:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:netExtraordinaryGainsLosses:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:discontinuedOperations:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:accountingChargesAndOther:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:incomeLossInclMinorityInterest:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:minorityInterest:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:netIncome:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:preferredDividends:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:otherAdjustments:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:netIncomeCommon:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
-- | Cash flow statement for general companies.
data GeneralCashFlowRow
GeneralCashFlowRow :: Int -> Text -> String -> Int -> Day -> Day -> Day -> Text -> Bool -> Bool -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> GeneralCashFlowRow
[$sel:simFinId:GeneralCashFlowRow] :: GeneralCashFlowRow -> Int
[$sel:ticker:GeneralCashFlowRow] :: GeneralCashFlowRow -> Text
[$sel:fiscalPeriod:GeneralCashFlowRow] :: GeneralCashFlowRow -> String
[$sel:fiscalYear:GeneralCashFlowRow] :: GeneralCashFlowRow -> Int
[$sel:reportDate:GeneralCashFlowRow] :: GeneralCashFlowRow -> Day
[$sel:publishDate:GeneralCashFlowRow] :: GeneralCashFlowRow -> Day
[$sel:restatedDate:GeneralCashFlowRow] :: GeneralCashFlowRow -> Day
[$sel:source:GeneralCashFlowRow] :: GeneralCashFlowRow -> Text
[$sel:tTM:GeneralCashFlowRow] :: GeneralCashFlowRow -> Bool
[$sel:valueCheck:GeneralCashFlowRow] :: GeneralCashFlowRow -> Bool
[$sel:netIncomeStartingLine:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netIncome:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netIncomeFromDiscontinuedOperations:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:otherAdjustmensts:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:depreciationAndAmortizatison:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:nonCashItems:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:stockBasedCompensatison:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:deferredIncomeTaxes:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:otherNonCashAdjustments:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:changeInWorkingCapital:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:changeInAccountsReceivable:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:changeInInventories:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:changeInAccountsPayable:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:changeInOther:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashFromDiscontinuedOperationsOperating:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashFromOpesratingActivities:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:changeInFixedAssetsAndIntsangibles:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:dispositionOfFixedAssetssAndIntangibles:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:dispositionOfFixedAsssets:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:dispositionOfIntangibleAssets:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:acquisitionOfFixedAssetsAndIntangibles:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:purchaseOfFixedAssets:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:acquisitionOfIntangibleAssets:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:otherChangeInFixedAssetsAndIntangibles:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netChangeInLongTermInvestment:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:decreaseInLongTermInvestment:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:increaseInLongTermInvestment:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashFromAcquisitionsAndDivestitures:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashFromDivestitures:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:cashForAcquisitionOfSubsidiaries:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:cashForJointVentures:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashFromOtherAcquisitions:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:otherInvestingActivities:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashFromDiscontinuedOperationsInvesting:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashFromInvestingActivities:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:dividendsPaid:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:cashFromRepaymentOfDebt:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:cashFromRepaymentOfShortTermDebtNet:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:cashFromRepaymentOfLongTermDebtNet:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:repaymentsOfLongTermDebt:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:cashFromLongTermDebt:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:cashFromRepurchaseOfEquity:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:increaseInCapitalStock:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:decreaseInCapitalStock:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:otherFinancingActivities:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashFromDiscontinuedOperationsFinancing:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashFromFinancingActivities:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashBeforeDiscOperationsAndFX:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:changeInCashFromDiscOperationsAndOther:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashBeforeFX:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:effectOfForeignExchangeRates:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netChangeInCash:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
-- | Cash flow statement for banks.
data BankCashFlowRow
BankCashFlowRow :: Int -> Text -> String -> Int -> Day -> Day -> Day -> Text -> Bool -> Bool -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> BankCashFlowRow
[$sel:simFinId:BankCashFlowRow] :: BankCashFlowRow -> Int
[$sel:ticker:BankCashFlowRow] :: BankCashFlowRow -> Text
[$sel:fiscalPeriod:BankCashFlowRow] :: BankCashFlowRow -> String
[$sel:fiscalYear:BankCashFlowRow] :: BankCashFlowRow -> Int
[$sel:reportDate:BankCashFlowRow] :: BankCashFlowRow -> Day
[$sel:publishDate:BankCashFlowRow] :: BankCashFlowRow -> Day
[$sel:restatedDate:BankCashFlowRow] :: BankCashFlowRow -> Day
[$sel:source:BankCashFlowRow] :: BankCashFlowRow -> Text
[$sel:tTM:BankCashFlowRow] :: BankCashFlowRow -> Bool
[$sel:valueCheck:BankCashFlowRow] :: BankCashFlowRow -> Bool
[$sel:netIncomeStartingLine:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netIncome:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netIncomeFromDiscontinuedOperations:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:otherAdjustments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:depreciationAndAmortization:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:provisionForLoanLosses:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:nonCashItems:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:gainOnSaleOfSecuritiesAndLoans:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:deferredIncomeTaxes:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:stockBasedCompensation:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:otherNonCashAdjustments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:changeInWorkingCapital:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:tradingAssetsAndLiabilities:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeOfInvestments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeOfInterbankAssets:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeOfInterbankLiabilities:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeInOperatingLoans:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:accruedInterestReceivable:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:accruedInterestPayable:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:otherOperatingAssetsLiabilities:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashFromDiscontinuedOperationsOperating:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashFromOperatingActivities:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:changeInFixedAssetsAndIntangibles:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:dispositionOfFixedAssetsAndIntangibles:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:capitalExpenditures:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeInInvestments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:decreaseInInvestments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:decreaseInHTMInvestments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:decreaseInAFSInvestments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:increaseInInvestments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:increaseInHTMInvestments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:increaseInAFSInvestments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeInOtherInvestments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeInLoansAndInterbank:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeInCustomerLoans:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeInInterbankAssets:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeInOtherLoans:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashFromAcquisitionsAndDivestitures:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashFromDivestitures:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:cashForAcquisitionOfSubsidiaries:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:cashForJointVentures:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashFromOtherAcquisitions:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:otherInvestingActivities:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashFromDiscontinuedOperationsInvesting:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashFromInvestingActivities:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:dividendsPaid:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:cashFromRepaymentOfDebt:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:cashFromRepaymentOfShortTermDebtNet:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeInInterbankTransfers:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:cashFromRepaymentOfLongTermDebtNet:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:repaymentsOfLongTermDebt:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:cashFromLongTermDebt:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:cashFromRepurchaseOfEquity:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:increaseInCapitalStock:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:decreaseInCapitalStock:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeInDeposits:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:otherFinancingActivities:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashFromDiscontinuedOperationsFinancing:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashFromFinancingActivities:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashBeforeDiscOperationsAndFX:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:changeInCashFromDiscOperationsAndOther:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashBeforeFX:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:effectOfForeignExchangeRates:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeInCash:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
-- | Cash flow statement for Insurance companies.
data InsuranceCashFlowRow
InsuranceCashFlowRow :: Int -> Text -> String -> Int -> Day -> Day -> Day -> Text -> Bool -> Bool -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> InsuranceCashFlowRow
[$sel:simFinId:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Int
[$sel:ticker:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Text
[$sel:fiscalPeriod:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> String
[$sel:fiscalYear:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Int
[$sel:reportDate:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Day
[$sel:publishDate:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Day
[$sel:restatedDate:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Day
[$sel:source:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Text
[$sel:tTM:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Bool
[$sel:valueCheck:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Bool
[$sel:netIncomeStartingLine:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netIncome:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netIncomeFromDiscontinuedOperations:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:otherAdjustments:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:depreciationAndAmortization:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:nonCashItems:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:stockBasedCompensation:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:deferredIncomeTaxes:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:otherNonCashAdjustments:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:changeInWorkingCapital:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netCashFromDiscontinuedOperationsOperating:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netCashFromOperatingActivities:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:changeInFixedAssetsAndIntangibles:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:dispositionOfFixedAssetsAndIntangibles:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:acquisitionOfFixedAssetsAndIntangibles:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netChangeInInvestments:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:increaseInInvestments:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:decreaseInInvestments:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:otherInvestingActivities:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netCashFromDiscontinuedOperationsInvesting:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netCashFromInvestingActivities:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:dividendsPaid:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:cashFromRepaymentOfDebt:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:cashFromRepaymentOfShortTermDebtNet:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:cashFromRepaymentOfLongTermDebtNet:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:repaymentsOfLongTermDebt:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:cashFromLongTermDebt:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:cashFromRepurchaseOfEquity:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:increaseInCapitalStock:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:decreaseInCapitalStock:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:changeInInsuranceReserves:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:otherFinancingActivities:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netCashFromDiscontinuedOperationsFinancing:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netCashFromFinancingActivities:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netCashBeforeDiscOperationsAndFX:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:changeInCashFromDiscOperationsAndOther:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netCashBeforeFX:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:effectOfForeignExchangeRates:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netChangeInCash:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
-- | Cash flow statement for general companies.
data DerivedRow a
DerivedRow :: Int -> Text -> FiscalPeriod -> Int -> Day -> Day -> Day -> Text -> Bool -> Bool -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe Int -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> DerivedRow a
[simFinId] :: DerivedRow a -> Int
[ticker] :: DerivedRow a -> Text
[fiscalPeriod] :: DerivedRow a -> FiscalPeriod
[fiscalYear] :: DerivedRow a -> Int
[reportDate] :: DerivedRow a -> Day
[publishDate] :: DerivedRow a -> Day
[restatedDate] :: DerivedRow a -> Day
[source] :: DerivedRow a -> Text
[tTM] :: DerivedRow a -> Bool
[valueCheck] :: DerivedRow a -> Bool
[eBITDA] :: DerivedRow a -> Maybe a
[totalDebt] :: DerivedRow a -> Maybe a
[freeCashFlow] :: DerivedRow a -> Maybe a
[grossProfitMargin] :: DerivedRow a -> Maybe a
[operatingMargin] :: DerivedRow a -> Maybe a
[netProfitMargin] :: DerivedRow a -> Maybe a
[returnOnEquity] :: DerivedRow a -> Maybe a
[returnOnAssets] :: DerivedRow a -> Maybe a
[freeCashFlowToNetIncome] :: DerivedRow a -> Maybe a
[currentRatio] :: DerivedRow a -> Maybe a
[liabilitiesToEquityRatio] :: DerivedRow a -> Maybe a
[debtRatio] :: DerivedRow a -> Maybe a
[earningsPerShareBasic] :: DerivedRow a -> Maybe a
[earningsPerShareDiluted] :: DerivedRow a -> Maybe a
[salesPerShare] :: DerivedRow a -> Maybe a
[equityPerShare] :: DerivedRow a -> Maybe a
[freeCashFlowPerShare] :: DerivedRow a -> Maybe a
[dividendsPerShare] :: DerivedRow a -> Maybe a
[piotroskiFScore] :: DerivedRow a -> Maybe Int
[returnOnInvestedCapital] :: DerivedRow a -> Maybe a
[cashReturnOnInvestedCapital] :: DerivedRow a -> Maybe a
[dividendPayoutRatio] :: DerivedRow a -> Maybe a
[netDebtEBITDA] :: DerivedRow a -> Maybe a
[netDebtEBIT] :: DerivedRow a -> Maybe a
-- | Prices of a company over a single day.
data PricesRow a
PricesRow :: Int -> Text -> Maybe Day -> a -> a -> a -> a -> a -> Integer -> Maybe a -> Maybe Integer -> PricesRow a
[$sel:simFinId:PricesRow] :: PricesRow a -> Int
[$sel:ticker:PricesRow] :: PricesRow a -> Text
[$sel:date:PricesRow] :: PricesRow a -> Maybe Day
[$sel:open:PricesRow] :: PricesRow a -> a
[$sel:high:PricesRow] :: PricesRow a -> a
[$sel:low:PricesRow] :: PricesRow a -> a
[$sel:close:PricesRow] :: PricesRow a -> a
[$sel:adjClose:PricesRow] :: PricesRow a -> a
[$sel:volume:PricesRow] :: PricesRow a -> Integer
[$sel:dividend:PricesRow] :: PricesRow a -> Maybe a
[$sel:commonSharesOutstanding:PricesRow] :: PricesRow a -> Maybe Integer
-- | Record modelling the extra data returned by calling the share price
-- API endpoint with the "&ratios" query parameter. See the SimFin
-- docs.
data RatiosRow a
RatiosRow :: Integer -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> RatiosRow a
[$sel:marketCap:RatiosRow] :: RatiosRow a -> Integer
[$sel:priceToEarningsRatioQuarterly:RatiosRow] :: RatiosRow a -> Maybe a
[$sel:priceToEarningsRatioTTM:RatiosRow] :: RatiosRow a -> Maybe a
[$sel:priceToSalesRatioQuarterly:RatiosRow] :: RatiosRow a -> Maybe a
[$sel:priceToSalesRatioTTM:RatiosRow] :: RatiosRow a -> Maybe a
[$sel:priceToBookValueTTM:RatiosRow] :: RatiosRow a -> Maybe a
[$sel:priceToFreeCashFlowQuarterly:RatiosRow] :: RatiosRow a -> Maybe a
[$sel:priceToFreeCashFlowTTM:RatiosRow] :: RatiosRow a -> Maybe a
[$sel:enterpriseValueTTM:RatiosRow] :: RatiosRow a -> Maybe a
[$sel:eVEBITDATTM:RatiosRow] :: RatiosRow a -> Maybe a
[$sel:eVSalesTTM:RatiosRow] :: RatiosRow a -> Maybe a
[$sel:eVFCFTTM:RatiosRow] :: RatiosRow a -> Maybe a
[$sel:bookToMarketValueTTM:RatiosRow] :: RatiosRow a -> Maybe a
[$sel:operatingIncomeEVTTM:RatiosRow] :: RatiosRow a -> Maybe a
-- | Represents a company's prices and ratios.
data PricesAndRatiosRow a
PricesAndRatiosRow :: PricesRow a -> RatiosRow a -> PricesAndRatiosRow a
[$sel:prices:PricesAndRatiosRow] :: PricesAndRatiosRow a -> PricesRow a
[$sel:ratios:PricesAndRatiosRow] :: PricesAndRatiosRow a -> RatiosRow a
-- | This represents all options the prices endpoint supports. Some of
-- these parameters are only available to SimFin+ users. For free users,
-- please use PricesQueryFree.
data PricesQuery
PricesQuery :: NonEmpty StockRef -> Maybe Day -> Maybe Day -> Bool -> PricesQuery
[$sel:stockRefs:PricesQuery] :: PricesQuery -> NonEmpty StockRef
[$sel:start:PricesQuery] :: PricesQuery -> Maybe Day
[$sel:end:PricesQuery] :: PricesQuery -> Maybe Day
[$sel:asReported:PricesQuery] :: PricesQuery -> Bool
-- | This represents all options the statement endpoint supports, minus the
-- "statement" parameter itself, which is set by simply calling the right
-- function. Some of these parameters are only available to SimFin+
-- users. For free users, please use StatementQueryFree. If you
-- provide a zero-length list for any field, the query parameter will be
-- omitted, and the API will try to return all relevant available
-- statements.
data StatementQuery
StatementQuery :: NonEmpty StockRef -> [FiscalPeriod] -> [Int] -> Maybe Day -> Maybe Day -> Bool -> Bool -> Bool -> StatementQuery
[$sel:stockRefs:StatementQuery] :: StatementQuery -> NonEmpty StockRef
[$sel:periods:StatementQuery] :: StatementQuery -> [FiscalPeriod]
[$sel:years:StatementQuery] :: StatementQuery -> [Int]
[$sel:start:StatementQuery] :: StatementQuery -> Maybe Day
[$sel:end:StatementQuery] :: StatementQuery -> Maybe Day
[$sel:ttm:StatementQuery] :: StatementQuery -> Bool
[$sel:asReported:StatementQuery] :: StatementQuery -> Bool
[$sel:shares:StatementQuery] :: StatementQuery -> Bool
-- | A stock ref is a SimSin ID or a ticker.
data StockRef
SimFinId :: Int -> StockRef
Ticker :: Text -> StockRef
-- | A fiscal period as understood by the SimFin API.
data FiscalPeriod
Q1 :: FiscalPeriod
Q2 :: FiscalPeriod
Q3 :: FiscalPeriod
Q4 :: FiscalPeriod
H1 :: FiscalPeriod
H2 :: FiscalPeriod
FullYear :: FiscalPeriod
FirstNineMonths :: FiscalPeriod
SixMonths :: FiscalPeriod
-- | Represents all the types of error the server returns, and that we can
-- encounter on our side.
data ApiError
-- | Can't turn ByteString into JSON
DecodeError :: ByteString -> String -> ApiError
-- | Can't turn JSON into result type
ParseError :: Value -> String -> ApiError
-- | Server returned '{"error": "..."}' along with a non-200 status code.
-- This could in theory be parsed into machine-readable format, with
-- variants such as `InvalidApiKey | RateLimited | ...`, but the API
-- doesn't guarantee error message stability.
Other :: Text -> ApiError
-- | The result of calling fetch* is either an error or a successful
-- result.
type ApiResult = Either ApiError
-- | Try to make a new http-client manager, and parse your api key from
-- apiKeyEnvVariable.
createDefaultContext :: (MonadFail m, MonadIO m) => m SimFinContext
-- | Fetch a list of company tickers and SimFin ids. This is the only
-- endpoint common to free and paid customers.
fetchCompanyList :: (MonadThrow m, MonadIO m) => SimFinContext -> m (Either ApiError [CompanyListingRow])
-- | Fetch general company information. See the SimFin docs.
fetchCompanyInfo :: (MonadThrow m, MonadIO m) => SimFinContext -> NonEmpty StockRef -> m (ApiResult [CompanyInfoRow])
-- | Fetch a company's balance sheet statements. See the SimFin
-- docs.
fetchBalanceSheets :: (MonadThrow m, MonadIO m) => SimFinContext -> StatementQuery -> m (ApiResult [IndustryBalanceSheet])
-- | Fetch a company's profit and loss statements. See the SimFin
-- docs.
fetchProfitsAndLosses :: (MonadThrow m, MonadIO m) => SimFinContext -> StatementQuery -> m (ApiResult [IndustryProfitAndLoss])
-- | Fetch a company's cash flow statements. See the SimFin docs.
fetchCashFlows :: (MonadThrow m, MonadIO m) => SimFinContext -> StatementQuery -> m (ApiResult [IndustryCashFlow])
-- | Fetch a company's derived figures. See the SimFin docs.
fetchDerived :: (Read a, RealFrac a, MonadThrow m, MonadIO m) => SimFinContext -> StatementQuery -> m (ApiResult [DerivedRow a])
-- | Fetch a company's historical share prices. See the SimFin docs.
fetchPrices :: (Read a, RealFrac a, MonadThrow m, MonadIO m) => SimFinContext -> PricesQuery -> m (ApiResult [PricesRow a])
-- | Fetch a company's historical share prices, along with key ratios. See
-- the SimFin docs.
fetchPricesAndRatios :: (Read a, RealFrac a, MonadThrow m, MonadIO m) => SimFinContext -> PricesQuery -> m (ApiResult [PricesAndRatiosRow a])
module SimFin.Free
-- | The context needed to call every fetch* function.
data SimFinContext
SimFinContext :: ByteString -> Manager -> SimFinContext
[simFinApiKey] :: SimFinContext -> ByteString
[simFinManager] :: SimFinContext -> Manager
-- | Distinguish between different industry-specific data.
data Industry general bank insurance
General :: general -> Industry general bank insurance
Bank :: bank -> Industry general bank insurance
Insurance :: insurance -> Industry general bank insurance
-- | SimFin ID and company ticker. See the SimFin docs.
data CompanyListingRow
CompanyListingRow :: Int -> Text -> CompanyListingRow
[$sel:simFinId:CompanyListingRow] :: CompanyListingRow -> Int
[$sel:ticker:CompanyListingRow] :: CompanyListingRow -> Text
-- | Genreal information about a company. See the SimFin docs.
data CompanyInfoRow
CompanyInfoRow :: Int -> Text -> Text -> Int -> Int -> Int -> Text -> CompanyInfoRow
[$sel:simFinId:CompanyInfoRow] :: CompanyInfoRow -> Int
[$sel:ticker:CompanyInfoRow] :: CompanyInfoRow -> Text
[$sel:companyName:CompanyInfoRow] :: CompanyInfoRow -> Text
[$sel:industryId:CompanyInfoRow] :: CompanyInfoRow -> Int
[$sel:monthFYEnd:CompanyInfoRow] :: CompanyInfoRow -> Int
[$sel:numberEmployees:CompanyInfoRow] :: CompanyInfoRow -> Int
[$sel:businessSummary:CompanyInfoRow] :: CompanyInfoRow -> Text
-- | Balance sheet statement for general companies.
data GeneralBalanceSheetRow
GeneralBalanceSheetRow :: Int -> Text -> String -> Int -> Day -> Day -> Day -> Text -> Bool -> Bool -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> GeneralBalanceSheetRow
[$sel:simFinId:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Int
[$sel:ticker:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Text
[$sel:fiscalPeriod:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> String
[$sel:fiscalYear:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Int
[$sel:reportDate:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Day
[$sel:publishDate:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Day
[$sel:restatedDate:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Day
[$sel:source:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Text
[$sel:tTM:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Bool
[$sel:valueCheck:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Bool
[$sel:cashCashEquivalentsAndShortTermInvestments:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:cashAndCashEquivalents:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:shortTermInvestments:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:accountsAndNotesReceivable:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:accountsReceivableNet:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:notesReceivableNet:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:unbilledRevenues:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:inventories:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:rawMaterials:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:workInProcess:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:finishedGoods:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:otherInventory:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:otherShortTermAssets:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:prepaidExpenses:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:derivativeAndHedgingAssetsShortTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:assetsHeldForSale:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:deferredTaxAssetsShortTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:incomeTaxesReceivable:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:discontinuedOperationsShortTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:miscShortTermAssets:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:totalCurrentAssets:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:propertyPlantAndEquipmentNet:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:propertyPlantAndEquipment:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:accumulatedDepreciation:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:longTermInvestmentsAndReceivables:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:longTermInvestments:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:longTermMarketableSecurities:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:longTermReceivables:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:otherLongTermAssets:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:intangibleAssets:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:goodwill:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:otherIntangibleAssets:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:prepaidExpense:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:deferredTaxAssetsLongTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:derivativeAndHedgingAssetsLongTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:prepaidPensionCosts:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:discontinuedOperationsLongTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:investmentsinAffiliates:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:miscLongTermAssets:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:totalNoncurrentAssets:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:totalAssets:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:payablesAndAccruals:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:accountsPayable:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:accruedTaxes:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:interestAndDividendsPayable:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:otherPayablesAndAccruals:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:shortTermDebt:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:shortTermBorrowings:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:shortTermCapitalLeases:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:currentPortionOfLongTermDebt:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:otherShortTermLiabilities:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:deferredRevenueShortTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:liabilitiesfromDerivativesAndHedgingShortTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:deferredTaxLiabilitiesShortTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:liabilitiesfromDiscontinuedOperationsShortTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:miscShortTermLiabilities:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:totalCurrentLiabilities:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:longTermDebt:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:longTermBorrowings:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:longTermCapitalLeases:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:otherLongTermLiabilities:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:accruedLiabilities:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:pensionLiabilities:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:pensions:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:otherPostRetirementBenefits:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:deferredCompensation:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:deferredRevenueLongTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:deferredTaxLiabilitiesLongTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:liabilitiesfromDerivativesAndHedgingLongTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:liabilitiesfromDiscontinuedOperationsLongTerm:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:miscLongTermLiabilities:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:totalNoncurrentLiabilities:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:totalLiabilities:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:preferredEquity:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:shareCapitalAndAdditionalPaidInCapital:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:commonStock:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:additionalPaidinCapital:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:otherShareCapital:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:treasuryStock:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:retainedEarnings:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:otherEquity:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:equityBeforeMinorityInterest:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:minorityInterest:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:totalEquity:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
[$sel:totalLiabilitiesAndEquity:GeneralBalanceSheetRow] :: GeneralBalanceSheetRow -> Maybe Integer
-- | Balance sheet statement for banks.
data BankBalanceSheetRow
BankBalanceSheetRow :: Int -> Text -> String -> Int -> Day -> Day -> Day -> Text -> Bool -> Bool -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> BankBalanceSheetRow
[$sel:simFinId:BankBalanceSheetRow] :: BankBalanceSheetRow -> Int
[$sel:ticker:BankBalanceSheetRow] :: BankBalanceSheetRow -> Text
[$sel:fiscalPeriod:BankBalanceSheetRow] :: BankBalanceSheetRow -> String
[$sel:fiscalYear:BankBalanceSheetRow] :: BankBalanceSheetRow -> Int
[$sel:reportDate:BankBalanceSheetRow] :: BankBalanceSheetRow -> Day
[$sel:publishDate:BankBalanceSheetRow] :: BankBalanceSheetRow -> Day
[$sel:restatedDate:BankBalanceSheetRow] :: BankBalanceSheetRow -> Day
[$sel:source:BankBalanceSheetRow] :: BankBalanceSheetRow -> Text
[$sel:tTM:BankBalanceSheetRow] :: BankBalanceSheetRow -> Bool
[$sel:valueCheck:BankBalanceSheetRow] :: BankBalanceSheetRow -> Bool
[$sel:cashCashEquivalentsAndShortTermInvestments:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:interbankAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:fedFundsSoldAndRepos:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherInterbankAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:shortAndLongTermInvestments:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:tradingSecurities:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:investmentSecuritiesAvailableforSale:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:investmentSecuritiesHeldtoMaturity:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:realEstateInvestments:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherInvestments:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:accountsAndNotesReceivable:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:netLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:reserveforLoanLosses:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:totalLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:totalCommercialLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:commercialRealEstateLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherCommercialLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:totalConsumerLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:creditCardLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:homeEquityLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:familyResidentialLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:autoLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:studentLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherConsumerLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherLoans:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:netFixedAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:propertyPlantAndEquipmentNet:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:operatingLeaseAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherFixedAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:intangibleAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:goodwill:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherIntangibleAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:investmentsInAssociates:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:deferredTaxAssetsShortTerm:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:derivativesAndHedgingAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:discontinuedOperationsAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:customerAcceptancesAndLiabilities:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:totalAssets:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:totalDeposits:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:demandDeposits:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:interestBearingDeposits:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:savingDeposits:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:timeDeposits:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherDeposits:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:shortTermDebt:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:securitiesSoldUnderRepo:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:tradingAccountLiabilities:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:shortTermCapitalLeases:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:currentPortionofLongTermDebt:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:shortTermBorrowings:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:payablesBrokerDealers:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:longTermDebt:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:longTermCapitalLeases:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:longTermBorrowings:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:pensionLiabilities:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:pensions:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherPostRetirementBenefits:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:deferredTaxLiabilitiesShortTerm:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:derivativesAndHedgingLiabilities:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:discontinuedOperationsLiabilities:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherLiabilities:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:totalLiabilities:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:preferredEquity:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:shareCapitalAndAdditionalPaidInCapital:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:commonStock:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:additionalPaidInCapital:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherShareCapital:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:treasuryStock:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:retainedEarnings:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:otherEquity:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:equityBeforeMinorityInterest:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:minorityInterest:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:totalEquity:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
[$sel:totalLiabilitiesAndEquity:BankBalanceSheetRow] :: BankBalanceSheetRow -> Maybe Integer
-- | Balance sheet statement for insurance companies.
data InsuranceBalanceSheetRow
InsuranceBalanceSheetRow :: Int -> Text -> String -> Int -> Day -> Day -> Day -> Text -> Bool -> Bool -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> InsuranceBalanceSheetRow
[$sel:simFinId:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Int
[$sel:ticker:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Text
[$sel:fiscalPeriod:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> String
[$sel:fiscalYear:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Int
[$sel:reportDate:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Day
[$sel:publishDate:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Day
[$sel:restatedDate:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Day
[$sel:source:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Text
[$sel:tTM:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Bool
[$sel:valueCheck:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Bool
[$sel:totalInvestments:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:fixedIncomeTradingAFSAndShortTermInv:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:loansAndMortgages:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:fixedIncomeSecuritiesHTM:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:equitySecurities:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:realEstateInvestments:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:otherInvestments:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:cashCashEquivalentsAndShortTermInvestments:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:accountsAndNotesReceivable:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:propertyPlantAndEquipmentNet:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:deferredPolicyAcquisitionCosts:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:otherAssets:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:totalAssets:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:insuranceReserves:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:reserveForOutstandingClaimsAndLosses:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:premiumReserveUnearned:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:lifePolicyBenefits:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:otherInsuranceReserves:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:shortTermDebt:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:otherShortTermLiabilities:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:longTermDebt:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:pensionLiabilities:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:pensions:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:otherPostRetirementBenefits:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:otherLongTermLiabilities:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:fundsForFutureAppropriations:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:totalLiabilities:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:preferredEquity:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:policyholdersEquity:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:shareCapitalAndAdditionalPaidInCapital:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:commonStock:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:additionalPaidInCapital:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:otherShareCapital:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:treasuryStock:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:retainedEarnings:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:otherEquity:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:equityBeforeMinorityInterest:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:minorityInterest:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:totalEquity:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
[$sel:totalLiabilitiesAndEquity:InsuranceBalanceSheetRow] :: InsuranceBalanceSheetRow -> Maybe Integer
-- | Cash flow statement for general companies.
data GeneralProfitAndLossRow
GeneralProfitAndLossRow :: Int -> Text -> String -> Int -> Day -> Day -> Day -> Text -> Bool -> Bool -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> GeneralProfitAndLossRow
[$sel:simFinId:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Int
[$sel:ticker:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Text
[$sel:fiscalPeriod:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> String
[$sel:fiscalYear:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Int
[$sel:reportDate:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Day
[$sel:publishDate:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Day
[$sel:restatedDate:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Day
[$sel:source:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Text
[$sel:tTM:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Bool
[$sel:valueCheck:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Bool
[$sel:revenue:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:salesAndServicesRevenue:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:financingRevenue:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:otherRevenue:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:costOfRevenue:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:costOfGoodsAndServices:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:costOfFinancingRevenue:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:costOfOtherRevenue:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:grossProfit:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:otherOperatingIncome:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:operatingExpenses:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:sellingGeneralAndAdministrative:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:sellingAndMarketing:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:generalAndAdministrative:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:researchAndDevelopment:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:depreciationAndAmortization:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:provisionForDoubtfulAccounts:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:otherOperatingExpenses:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:operatingIncomeLoss:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:nonOperatingIncomeLoss:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:interestExpenseNet:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:interestExpense:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:interestIncome:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:otherInvestmentIncomeLoss:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:foreignExchangeGainLoss:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:incomeLossFromAffiliates:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:otherNonOperatingIncomeLoss:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:pretaxIncomeLossAdj:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:abnormalGainsLosses:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:acquiredInProcessRAndD:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:mergerAndAcquisitionExpense:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:abnormalDerivatives:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:disposalOfAssets:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:earlyExtinguishmentOfDebt:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:assetWriteDown:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:impairmentOfGoodwillAndIntangibles:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:saleOfBusiness:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:legalSettlement:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:restructuringCharges:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:saleOfInvestmentsAndUnrealizedInvestments:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:insuranceSettlement:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:otherAbnormalItems:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:pretaxIncomeLoss:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:incomeTaxExpenseBenefitNet:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:currentIncomeTax:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:deferredIncomeTax:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:taxAllowanceCredit:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:incomeLossFromAffiliatesNetOfTaxes:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:incomeLossFromContinuingOperations:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:netExtraordinaryGainsLosses:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:discontinuedOperations:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:accountingChargesAndOther:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:incomeLossInclMinorityInterest:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:minorityInterest:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:netIncome:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:preferredDividends:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:otherAdjustments:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
[$sel:netIncomeCommon:GeneralProfitAndLossRow] :: GeneralProfitAndLossRow -> Maybe Integer
-- | Cash flow statement for banks.
data BankProfitAndLossRow
BankProfitAndLossRow :: Int -> Text -> String -> Int -> Day -> Day -> Day -> Text -> Bool -> Bool -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> BankProfitAndLossRow
[$sel:simFinId:BankProfitAndLossRow] :: BankProfitAndLossRow -> Int
[$sel:ticker:BankProfitAndLossRow] :: BankProfitAndLossRow -> Text
[$sel:fiscalPeriod:BankProfitAndLossRow] :: BankProfitAndLossRow -> String
[$sel:fiscalYear:BankProfitAndLossRow] :: BankProfitAndLossRow -> Int
[$sel:reportDate:BankProfitAndLossRow] :: BankProfitAndLossRow -> Day
[$sel:publishDate:BankProfitAndLossRow] :: BankProfitAndLossRow -> Day
[$sel:restatedDate:BankProfitAndLossRow] :: BankProfitAndLossRow -> Day
[$sel:source:BankProfitAndLossRow] :: BankProfitAndLossRow -> Text
[$sel:tTM:BankProfitAndLossRow] :: BankProfitAndLossRow -> Bool
[$sel:valueCheck:BankProfitAndLossRow] :: BankProfitAndLossRow -> Bool
[$sel:revenue:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:netInterestIncome:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:totalInterestIncome:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:totalInterestExpense:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:totalNonInterestIncome:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:tradingAccountProfitsLosses:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:investmentIncomeLoss:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:saleOfLoanIncomeLoss:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:commissionsAndFeesEarned:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:netOTTILossesRecognisedInEarnings:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:otherNonInterestIncome:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:provisionForLoanLosses:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:netRevenueAfterProvisions:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:totalNonInterestExpense:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:commissionsAndFeesPaid:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:otherOperatingExpenses:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:operatingIncomeLoss:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:nonOperatingIncomeLoss:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:incomeLossFromAffiliates:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:otherNonOperatingIncomeLoss:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:pretaxIncomeLossAdj:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:abnormalGainsLosses:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:debtValuationAdjustment:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:creditValuationAdjustment:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:mergerAndAcquisitionExpense:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:disposalOfAssets:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:earlyExtinguishmentOfDebt:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:assetWriteDown:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:impairmentOfGoodwillAndIntangibles:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:saleOfBusiness:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:legalSettlement:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:restructuringCharges:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:otherAbnormalItems:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:pretaxIncomeLoss:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:incomeTaxExpenseBenefitNet:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:currentIncomeTax:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:deferredIncomeTax:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:taxAllowanceCredit:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:incomeLossFromAffiliatesNetOfTaxes:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:incomeLossFromContinuingOperations:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:netExtraordinaryGainsLosses:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:discontinuedOperations:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:accountingChargesAndOther:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:incomeLossInclMinorityInterest:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:minorityInterest:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:netIncome:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:preferredDividends:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:otherAdjustments:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
[$sel:netIncomeCommon:BankProfitAndLossRow] :: BankProfitAndLossRow -> Maybe Integer
-- | Cash flow statement for insurance companies.
data InsuranceProfitAndLossRow
InsuranceProfitAndLossRow :: Int -> Text -> String -> Int -> Day -> Day -> Day -> Text -> Bool -> Bool -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> InsuranceProfitAndLossRow
[$sel:simFinId:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Int
[$sel:ticker:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Text
[$sel:fiscalPeriod:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> String
[$sel:fiscalYear:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Int
[$sel:reportDate:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Day
[$sel:publishDate:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Day
[$sel:restatedDate:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Day
[$sel:source:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Text
[$sel:tTM:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Bool
[$sel:valueCheck:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Bool
[$sel:revenue:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:netPremiumsEarned:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:investmentIncomeLoss:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:incomeFromRealEstate:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:otherOperatingIncome:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:policyChargesAndFees:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:totalRealizedInvestmentGains:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:totalOTTIRealized:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:otherRealizedInvestmentGains:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:otherIncome:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:totalClaimsAndLosses:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:claimsAndLosses:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:longTermCharges:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:otherClaimsAndLosses:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:underwritingExpenseAndAcquisitionCost:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:otherOperatingExpenses:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:operatingIncomeLoss:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:nonOperatingIncomeLoss:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:incomeLossFromAffiliates:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:interestExpenseNet:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:otherNonOperatingIncomeLoss:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:pretaxIncomeLossAdj:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:abnormalGainsLosses:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:mergerAndAcquisitionExpense:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:abnormalDerivatives:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:disposalOfAssets:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:earlyExtinguishmentOfDebt:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:assetWriteDown:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:impairmentOfGoodwillAndIntangibles:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:saleOfBusiness:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:legalSettlement:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:restructuringCharges:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:netInvestmentLosses:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:foreignExchange:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:otherAbnormalItems:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:pretaxIncomeLoss:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:incomeTaxExpenseBenefitNet:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:currentIncomeTax:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:deferredIncomeTax:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:taxAllowanceCredit:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:incomeLossFromAffiliatesNetOfTaxes:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:incomeLossFromContinuingOperations:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:netExtraordinaryGainsLosses:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:discontinuedOperations:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:accountingChargesAndOther:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:incomeLossInclMinorityInterest:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:minorityInterest:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:netIncome:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:preferredDividends:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:otherAdjustments:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
[$sel:netIncomeCommon:InsuranceProfitAndLossRow] :: InsuranceProfitAndLossRow -> Maybe Integer
-- | Cash flow statement for general companies.
data GeneralCashFlowRow
GeneralCashFlowRow :: Int -> Text -> String -> Int -> Day -> Day -> Day -> Text -> Bool -> Bool -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> GeneralCashFlowRow
[$sel:simFinId:GeneralCashFlowRow] :: GeneralCashFlowRow -> Int
[$sel:ticker:GeneralCashFlowRow] :: GeneralCashFlowRow -> Text
[$sel:fiscalPeriod:GeneralCashFlowRow] :: GeneralCashFlowRow -> String
[$sel:fiscalYear:GeneralCashFlowRow] :: GeneralCashFlowRow -> Int
[$sel:reportDate:GeneralCashFlowRow] :: GeneralCashFlowRow -> Day
[$sel:publishDate:GeneralCashFlowRow] :: GeneralCashFlowRow -> Day
[$sel:restatedDate:GeneralCashFlowRow] :: GeneralCashFlowRow -> Day
[$sel:source:GeneralCashFlowRow] :: GeneralCashFlowRow -> Text
[$sel:tTM:GeneralCashFlowRow] :: GeneralCashFlowRow -> Bool
[$sel:valueCheck:GeneralCashFlowRow] :: GeneralCashFlowRow -> Bool
[$sel:netIncomeStartingLine:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netIncome:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netIncomeFromDiscontinuedOperations:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:otherAdjustmensts:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:depreciationAndAmortizatison:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:nonCashItems:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:stockBasedCompensatison:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:deferredIncomeTaxes:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:otherNonCashAdjustments:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:changeInWorkingCapital:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:changeInAccountsReceivable:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:changeInInventories:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:changeInAccountsPayable:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:changeInOther:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashFromDiscontinuedOperationsOperating:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashFromOpesratingActivities:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:changeInFixedAssetsAndIntsangibles:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:dispositionOfFixedAssetssAndIntangibles:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:dispositionOfFixedAsssets:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:dispositionOfIntangibleAssets:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:acquisitionOfFixedAssetsAndIntangibles:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:purchaseOfFixedAssets:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:acquisitionOfIntangibleAssets:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:otherChangeInFixedAssetsAndIntangibles:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netChangeInLongTermInvestment:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:decreaseInLongTermInvestment:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:increaseInLongTermInvestment:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashFromAcquisitionsAndDivestitures:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashFromDivestitures:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:cashForAcquisitionOfSubsidiaries:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:cashForJointVentures:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashFromOtherAcquisitions:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:otherInvestingActivities:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashFromDiscontinuedOperationsInvesting:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashFromInvestingActivities:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:dividendsPaid:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:cashFromRepaymentOfDebt:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:cashFromRepaymentOfShortTermDebtNet:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:cashFromRepaymentOfLongTermDebtNet:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:repaymentsOfLongTermDebt:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:cashFromLongTermDebt:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:cashFromRepurchaseOfEquity:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:increaseInCapitalStock:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:decreaseInCapitalStock:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:otherFinancingActivities:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashFromDiscontinuedOperationsFinancing:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashFromFinancingActivities:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashBeforeDiscOperationsAndFX:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:changeInCashFromDiscOperationsAndOther:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netCashBeforeFX:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:effectOfForeignExchangeRates:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
[$sel:netChangeInCash:GeneralCashFlowRow] :: GeneralCashFlowRow -> Maybe Integer
-- | Cash flow statement for banks.
data BankCashFlowRow
BankCashFlowRow :: Int -> Text -> String -> Int -> Day -> Day -> Day -> Text -> Bool -> Bool -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> BankCashFlowRow
[$sel:simFinId:BankCashFlowRow] :: BankCashFlowRow -> Int
[$sel:ticker:BankCashFlowRow] :: BankCashFlowRow -> Text
[$sel:fiscalPeriod:BankCashFlowRow] :: BankCashFlowRow -> String
[$sel:fiscalYear:BankCashFlowRow] :: BankCashFlowRow -> Int
[$sel:reportDate:BankCashFlowRow] :: BankCashFlowRow -> Day
[$sel:publishDate:BankCashFlowRow] :: BankCashFlowRow -> Day
[$sel:restatedDate:BankCashFlowRow] :: BankCashFlowRow -> Day
[$sel:source:BankCashFlowRow] :: BankCashFlowRow -> Text
[$sel:tTM:BankCashFlowRow] :: BankCashFlowRow -> Bool
[$sel:valueCheck:BankCashFlowRow] :: BankCashFlowRow -> Bool
[$sel:netIncomeStartingLine:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netIncome:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netIncomeFromDiscontinuedOperations:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:otherAdjustments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:depreciationAndAmortization:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:provisionForLoanLosses:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:nonCashItems:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:gainOnSaleOfSecuritiesAndLoans:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:deferredIncomeTaxes:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:stockBasedCompensation:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:otherNonCashAdjustments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:changeInWorkingCapital:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:tradingAssetsAndLiabilities:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeOfInvestments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeOfInterbankAssets:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeOfInterbankLiabilities:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeInOperatingLoans:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:accruedInterestReceivable:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:accruedInterestPayable:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:otherOperatingAssetsLiabilities:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashFromDiscontinuedOperationsOperating:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashFromOperatingActivities:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:changeInFixedAssetsAndIntangibles:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:dispositionOfFixedAssetsAndIntangibles:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:capitalExpenditures:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeInInvestments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:decreaseInInvestments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:decreaseInHTMInvestments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:decreaseInAFSInvestments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:increaseInInvestments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:increaseInHTMInvestments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:increaseInAFSInvestments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeInOtherInvestments:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeInLoansAndInterbank:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeInCustomerLoans:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeInInterbankAssets:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeInOtherLoans:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashFromAcquisitionsAndDivestitures:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashFromDivestitures:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:cashForAcquisitionOfSubsidiaries:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:cashForJointVentures:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashFromOtherAcquisitions:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:otherInvestingActivities:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashFromDiscontinuedOperationsInvesting:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashFromInvestingActivities:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:dividendsPaid:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:cashFromRepaymentOfDebt:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:cashFromRepaymentOfShortTermDebtNet:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeInInterbankTransfers:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:cashFromRepaymentOfLongTermDebtNet:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:repaymentsOfLongTermDebt:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:cashFromLongTermDebt:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:cashFromRepurchaseOfEquity:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:increaseInCapitalStock:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:decreaseInCapitalStock:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeInDeposits:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:otherFinancingActivities:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashFromDiscontinuedOperationsFinancing:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashFromFinancingActivities:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashBeforeDiscOperationsAndFX:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:changeInCashFromDiscOperationsAndOther:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netCashBeforeFX:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:effectOfForeignExchangeRates:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
[$sel:netChangeInCash:BankCashFlowRow] :: BankCashFlowRow -> Maybe Integer
-- | Cash flow statement for Insurance companies.
data InsuranceCashFlowRow
InsuranceCashFlowRow :: Int -> Text -> String -> Int -> Day -> Day -> Day -> Text -> Bool -> Bool -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> InsuranceCashFlowRow
[$sel:simFinId:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Int
[$sel:ticker:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Text
[$sel:fiscalPeriod:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> String
[$sel:fiscalYear:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Int
[$sel:reportDate:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Day
[$sel:publishDate:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Day
[$sel:restatedDate:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Day
[$sel:source:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Text
[$sel:tTM:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Bool
[$sel:valueCheck:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Bool
[$sel:netIncomeStartingLine:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netIncome:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netIncomeFromDiscontinuedOperations:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:otherAdjustments:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:depreciationAndAmortization:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:nonCashItems:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:stockBasedCompensation:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:deferredIncomeTaxes:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:otherNonCashAdjustments:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:changeInWorkingCapital:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netCashFromDiscontinuedOperationsOperating:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netCashFromOperatingActivities:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:changeInFixedAssetsAndIntangibles:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:dispositionOfFixedAssetsAndIntangibles:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:acquisitionOfFixedAssetsAndIntangibles:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netChangeInInvestments:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:increaseInInvestments:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:decreaseInInvestments:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:otherInvestingActivities:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netCashFromDiscontinuedOperationsInvesting:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netCashFromInvestingActivities:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:dividendsPaid:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:cashFromRepaymentOfDebt:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:cashFromRepaymentOfShortTermDebtNet:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:cashFromRepaymentOfLongTermDebtNet:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:repaymentsOfLongTermDebt:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:cashFromLongTermDebt:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:cashFromRepurchaseOfEquity:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:increaseInCapitalStock:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:decreaseInCapitalStock:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:changeInInsuranceReserves:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:otherFinancingActivities:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netCashFromDiscontinuedOperationsFinancing:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netCashFromFinancingActivities:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netCashBeforeDiscOperationsAndFX:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:changeInCashFromDiscOperationsAndOther:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netCashBeforeFX:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:effectOfForeignExchangeRates:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
[$sel:netChangeInCash:InsuranceCashFlowRow] :: InsuranceCashFlowRow -> Maybe Integer
-- | Cash flow statement for general companies.
data DerivedRow a
DerivedRow :: Int -> Text -> FiscalPeriod -> Int -> Day -> Day -> Day -> Text -> Bool -> Bool -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe Int -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> Maybe a -> DerivedRow a
[simFinId] :: DerivedRow a -> Int
[ticker] :: DerivedRow a -> Text
[fiscalPeriod] :: DerivedRow a -> FiscalPeriod
[fiscalYear] :: DerivedRow a -> Int
[reportDate] :: DerivedRow a -> Day
[publishDate] :: DerivedRow a -> Day
[restatedDate] :: DerivedRow a -> Day
[source] :: DerivedRow a -> Text
[tTM] :: DerivedRow a -> Bool
[valueCheck] :: DerivedRow a -> Bool
[eBITDA] :: DerivedRow a -> Maybe a
[totalDebt] :: DerivedRow a -> Maybe a
[freeCashFlow] :: DerivedRow a -> Maybe a
[grossProfitMargin] :: DerivedRow a -> Maybe a
[operatingMargin] :: DerivedRow a -> Maybe a
[netProfitMargin] :: DerivedRow a -> Maybe a
[returnOnEquity] :: DerivedRow a -> Maybe a
[returnOnAssets] :: DerivedRow a -> Maybe a
[freeCashFlowToNetIncome] :: DerivedRow a -> Maybe a
[currentRatio] :: DerivedRow a -> Maybe a
[liabilitiesToEquityRatio] :: DerivedRow a -> Maybe a
[debtRatio] :: DerivedRow a -> Maybe a
[earningsPerShareBasic] :: DerivedRow a -> Maybe a
[earningsPerShareDiluted] :: DerivedRow a -> Maybe a
[salesPerShare] :: DerivedRow a -> Maybe a
[equityPerShare] :: DerivedRow a -> Maybe a
[freeCashFlowPerShare] :: DerivedRow a -> Maybe a
[dividendsPerShare] :: DerivedRow a -> Maybe a
[piotroskiFScore] :: DerivedRow a -> Maybe Int
[returnOnInvestedCapital] :: DerivedRow a -> Maybe a
[cashReturnOnInvestedCapital] :: DerivedRow a -> Maybe a
[dividendPayoutRatio] :: DerivedRow a -> Maybe a
[netDebtEBITDA] :: DerivedRow a -> Maybe a
[netDebtEBIT] :: DerivedRow a -> Maybe a
-- | Prices of a company over a single day.
data PricesRow a
PricesRow :: Int -> Text -> Maybe Day -> a -> a -> a -> a -> a -> Integer -> Maybe a -> Maybe Integer -> PricesRow a
[$sel:simFinId:PricesRow] :: PricesRow a -> Int
[$sel:ticker:PricesRow] :: PricesRow a -> Text
[$sel:date:PricesRow] :: PricesRow a -> Maybe Day
[$sel:open:PricesRow] :: PricesRow a -> a
[$sel:high:PricesRow] :: PricesRow a -> a
[$sel:low:PricesRow] :: PricesRow a -> a
[$sel:close:PricesRow] :: PricesRow a -> a
[$sel:adjClose:PricesRow] :: PricesRow a -> a
[$sel:volume:PricesRow] :: PricesRow a -> Integer
[$sel:dividend:PricesRow] :: PricesRow a -> Maybe a
[$sel:commonSharesOutstanding:PricesRow] :: PricesRow a -> Maybe Integer
-- | Represents all the parameters available to free users.
type PricesQueryFree = StockRef
-- | This is a subset of the StatementQuery type, which models the
-- parameters available to non-SimFin+ users.
data StatementQueryFree
StatementQueryFree :: StockRef -> FiscalPeriod -> Int -> Bool -> StatementQueryFree
[$sel:stockRef:StatementQueryFree] :: StatementQueryFree -> StockRef
[$sel:period:StatementQueryFree] :: StatementQueryFree -> FiscalPeriod
[$sel:year:StatementQueryFree] :: StatementQueryFree -> Int
[$sel:ttm:StatementQueryFree] :: StatementQueryFree -> Bool
-- | A stock ref is a SimSin ID or a ticker.
data StockRef
SimFinId :: Int -> StockRef
Ticker :: Text -> StockRef
-- | A fiscal period as understood by the SimFin API.
data FiscalPeriod
Q1 :: FiscalPeriod
Q2 :: FiscalPeriod
Q3 :: FiscalPeriod
Q4 :: FiscalPeriod
H1 :: FiscalPeriod
H2 :: FiscalPeriod
FullYear :: FiscalPeriod
FirstNineMonths :: FiscalPeriod
SixMonths :: FiscalPeriod
-- | Represents all the types of error the server returns, and that we can
-- encounter on our side.
data ApiError
-- | Can't turn ByteString into JSON
DecodeError :: ByteString -> String -> ApiError
-- | Can't turn JSON into result type
ParseError :: Value -> String -> ApiError
-- | Server returned '{"error": "..."}' along with a non-200 status code.
-- This could in theory be parsed into machine-readable format, with
-- variants such as `InvalidApiKey | RateLimited | ...`, but the API
-- doesn't guarantee error message stability.
Other :: Text -> ApiError
-- | The result of calling fetch* is either an error or a successful
-- result.
type ApiResult = Either ApiError
-- | Try to make a new http-client manager, and parse your api key from
-- apiKeyEnvVariable.
createDefaultContext :: (MonadFail m, MonadIO m) => m SimFinContext
-- | Fetch a list of company tickers and SimFin ids. This is the only
-- endpoint common to free and paid customers.
fetchCompanyList :: (MonadThrow m, MonadIO m) => SimFinContext -> m (Either ApiError [CompanyListingRow])
-- | Fetch general company information. See the SimFin docs.
fetchCompanyInfo :: (MonadThrow m, MonadIO m) => SimFinContext -> StockRef -> m (ApiResult (Maybe CompanyInfoRow))
-- | Fetch a company's balance sheet statement. As this is the free API
-- version, only one statement is returned. The returned statement's data
-- is dependent on the company type. See the SimFin docs.
fetchBalanceSheet :: (MonadThrow m, MonadIO m) => SimFinContext -> StatementQueryFree -> m (ApiResult (Maybe IndustryBalanceSheet))
-- | Fetch a company's profit and loss statement. As this is the free API
-- version, only one statement is returned. The returned statement's data
-- is dependent on the company type. See the SimFin docs.
fetchProfitAndLoss :: (MonadThrow m, MonadIO m) => SimFinContext -> StatementQueryFree -> m (ApiResult (Maybe IndustryProfitAndLoss))
-- | Fetch a company's cash flow statement. As this is the free API
-- version, only one statement is returned. The returned statement's data
-- is dependent on the company type. See the SimFin docs.
fetchCashFlow :: (MonadThrow m, MonadIO m) => SimFinContext -> StatementQueryFree -> m (ApiResult (Maybe IndustryCashFlow))
-- | Fetch a company's derived figures. As this is the free API version,
-- only one set of data is returned. See the SimFin docs.
fetchDerived :: forall m a. (Read a, RealFrac a, MonadThrow m, MonadIO m) => SimFinContext -> StatementQueryFree -> m (ApiResult (Maybe (DerivedRow a)))
-- | Fetch a company's historical share prices. See the SimFin docs.
fetchPrices :: (Read a, RealFrac a, MonadThrow m, MonadIO m) => SimFinContext -> PricesQueryFree -> m (ApiResult [PricesRow a])