from typing import overload
import abc
import datetime
import typing

import QuantConnect
import QuantConnect.Data
import QuantConnect.Data.Fundamental
import QuantConnect.Data.UniverseSelection
import System
import System.Collections.Generic

ReusuableCLRObject = typing.Any

QuantConnect_Data_Fundamental_MultiPeriodField_T = typing.TypeVar("QuantConnect_Data_Fundamental_MultiPeriodField_T")


class StockType(System.Object):
    """Helper class for the AssetClassification's StockType field AssetClassification.StockType"""

    AggressiveGrowth: int = 1
    """
    Companies whose revenues and earnings have both been growing significantly faster than
    the general economy.
    """

    ClassicGrowth: int = 2
    """
    Companies that are growing respectably faster than the general economy, and often pay a
    steady dividend. They tend to be mature and solidly profitable businesses.
    """

    Cyclicals: int = 3
    """
    Companies in the cyclicals and durables sectors, except those in the three types below.
    The profits of cyclicals tend to rise and fall with the general economy.
    """

    Distressed: int = 4
    """
    Companies that have had consistently declining cash flows and earnings over the past
    three years, and/or very high debt.
    """

    HardAsset: int = 5
    """
    Companies that deal in assets such as oil, metals, and real estate, which tend to do
    well in inflationary environments.
    """

    HighYield: int = 6
    """
    Companies that have dividend yields at least twice the average for large-cap stocks.
    They tend to be mature, slow-growing companies.
    """

    SlowGrowth: int = 7
    """
    Companies that have shown slow revenue and earnings growth (typically less than the rate
    of GDP growth) over at least three years.
    """

    SpeculativeGrowth: int = 8
    """
    Companies that have shown strong revenue growth but slower or spotty earnings growth.
    Very small or young companies also tend to fall into this class.
    """


class StyleBox(System.Object):
    """
    Helper class for the AssetClassification's StyleBox field AssetClassification.StyleBox.
    For stocks and stock funds, it classifies securities according to market capitalization and growth and value factor
    """

    LargeValue: int = 1

    LargeCore: int = 2

    LargeGrowth: int = 3

    MidValue: int = 4

    MidCore: int = 5

    MidGrowth: int = 6

    SmallValue: int = 7

    SmallCore: int = 8

    SmallGrowth: int = 9


class MorningstarEconomySphereCode(System.Object):
    """Helper class for the AssetClassification's MorningstarEconomySphereCode field AssetClassification.MorningstarEconomySphereCode."""

    Cyclical: int = 1
    """
    The cyclical Super Sector includes industries significantly affected by economic shifts.
    When the economy is prosperous, these industries tend to expand, and when the economy is
    in a downturn they tend to shrink. In general, the stocks in these industries have betas
    of greater than 1.
    """

    Defensive: int = 2
    """
    The defensive Super Sector includes industries that are relatively immune to economic
    cycles. These industries provide services that consumers require in both good and bad
    times, such as healthcare and utilities. In general, the stocks in these industries have
    betas of less than 1.
    """

    Sensitive: int = 3
    """
    The sensitive Super Sector includes industries that ebb and flow with the overall
    economy, but not severely. Sensitive industries fall between defensive and cyclical, as
    they are not immune to a poor economy, but they also may not be as severely affected as
    industries in the cyclical Super Sector. In general, the stocks in these industries have
    betas that are close to 1.
    """


class MorningstarSectorCode(System.Object):
    """Helper class for the AssetClassification's MorningstarSectorCode field AssetClassification.MorningstarSectorCode."""

    BasicMaterials: int = 101
    """
    Companies that manufacture chemicals, building materials, and paper products. This
    sector also includes companies engaged in commodities exploration and processing.
    """

    ConsumerCyclical: int = 102
    """
    This sector includes retail stores, auto and auto-parts manufacturers, restaurants,
    lodging facilities, specialty retail and travel companies.
    """

    FinancialServices: int = 103
    """
    Companies that provide financial services include banks, savings and loans, asset
    management companies, credit services, investment brokerage firms, and insurance companies.
    """

    RealEstate: int = 104
    """This sector includes companies that develop, acquire, manage, and operate real estate properties."""

    ConsumerDefensive: int = 205
    """
    Companies that manufacture food, beverages, household and personal products, packaging,
    or tobacco. Also includes companies that provide services such as education and training services.
    """

    Healthcare: int = 206
    """
    This sector includes biotechnology, pharmaceuticals, research services, home healthcare,
    hospitals, long-term-care facilities, and medical equipment and supplies. Also include
    pharmaceutical retailers and companies which provide health information services.
    """

    Utilities: int = 207
    """Electric, gas, and water utilities."""

    CommunicationServices: int = 308
    """
    Companies that provide communication services using fixed-line networks or
    those that provide wireless access and services. Also includes companies that provide
    advertising & marketing services, entertainment content and services, as well as
    interactive media and content provider over internet or through software.
    """

    Energy: int = 309
    """
    Companies that produce or refine oil and gas, oilfield-services and equipment companies,
    and pipeline operators. This sector also includes companies that mine thermal coal and uranium.
    """

    Industrials: int = 310
    """
    Companies that manufacture machinery, hand-held tools, and industrial products. This
    sector also includes aerospace and defense firms as well as companies engaged in
    transportation services.
    """

    Technology: int = 311
    """
    Companies engaged in the design, development, and support of computer operating systems
    and applications. This sector also includes companies that make computer equipment, data
    storage products, networking products, semiconductors, and components.
    """


class MorningstarIndustryGroupCode(System.Object):
    """Helper class for the AssetClassification's MorningstarIndustryGroupCode field AssetClassification.MorningstarIndustryGroupCode."""

    Agriculture: int = 10110

    BuildingMaterials: int = 10120

    Chemicals: int = 10130

    ForestProducts: int = 10140

    MetalsAndMining: int = 10150

    Steel: int = 10160

    VehiclesAndParts: int = 10200

    Furnishings: int = 10220

    FixturesAndAppliances: int = 10220

    HomebuildingAndConstruction: int = 10230

    ManufacturingApparelAndAccessories: int = 10240

    PackagingAndContainers: int = 10250

    PersonalServices: int = 10260

    Restaurants: int = 10270

    RetailCyclical: int = 10280

    TravelAndLeisure: int = 10290

    AssetManagement: int = 10310

    Banks: int = 10320

    CapitalMarkets: int = 10330

    Insurance: int = 10340

    DiversifiedFinancialServices: int = 10350

    CreditServices: int = 10360

    RealEstate: int = 10410

    REITs: int = 10420

    BeveragesAlcoholic: int = 20510

    BeveragesNonAlcoholic: int = 20520

    ConsumerPackagedGoods: int = 20525

    Education: int = 20540

    RetailDefensive: int = 20550

    TobaccoProducts: int = 20560

    Biotechnology: int = 20610

    DrugManufacturers: int = 20620

    HealthcarePlans: int = 20630

    HealthcareProvidersAndServices: int = 20645

    MedicalDevicesAndInstruments: int = 20650

    MedicalDiagnosticsAndResearch: int = 20660

    MedicalDistribution: int = 20670

    UtilitiesIndependentPowerProducers: int = 20710

    UtilitiesRegulated: int = 20720

    TelecommunicationServices: int = 30810

    MediaDiversified: int = 30820

    InteractiveMedia: int = 30830

    OilAndGas: int = 30910

    OtherEnergySources: int = 30920

    AerospaceAndDefense: int = 31010

    BusinessServices: int = 31020

    Conglomerates: int = 31030

    Construction: int = 31040

    FarmAndHeavyConstructionMachinery: int = 31050

    IndustrialDistribution: int = 31060

    IndustrialProducts: int = 31070

    Transportation: int = 31080

    WasteManagement: int = 31090

    Software: int = 31110

    Hardware: int = 31120

    Semiconductors: int = 31130


class MorningstarIndustryCode(System.Object):
    """Helper class for the AssetClassification's MorningstarIndustryCode field AssetClassification.MorningstarIndustryCode."""

    AgriculturalInputs: int = 10110010
    """
    Companies that manufacture nitrogenous and phosphatic fertilizers, pesticides, seed, and
    other agricultural chemical products.
    """

    BuildingMaterials: int = 10120010
    """
    Companies that manufacture construction materials, including stone, clay, and brick
    products, cement, lime, gypsum, and concrete and other construction products. Excludes
    companies that manufacture finished and semi finished building products.
    """

    Chemicals: int = 10130010
    """
    Chemical manufacturing companies engaged in diverse chemical and chemical-related
    operations, and basic chemicals manufacturing.
    """

    SpecialtyChemicals: int = 10130020
    """
    Companies that use base chemicals to produce value-added chemicals that are used in a
    variety of products. Includes companies that produce polishes, adhesives and sealants,
    explosives, printing ink, paint, carbon black, acids, repellants, and cleaning solutions.
    """

    LumberAndWoodProduction: int = 10140010
    """Companies that grow timber, mill lumber, and manufacture wood and wood products for construction."""

    PaperAndPaperProducts: int = 10140020
    """
    Companies that manufacture and market paper and paper-related products from wood pulp
    and other fibers. Excludes companies that produce paper packaging products and are
    classified in the packaging and containers industry.
    """

    Aluminum: int = 10150010
    """
    Companies that produce, refine, market, and distribute aluminum and related
    aluminum-based products.
    """

    Copper: int = 10150020
    """
    Companies engaged in the exploration, mining, smelting, and refining of copper ores and
    related copper products.
    """

    OtherIndustrialMetalsAndMining: int = 10150030
    """
    Companies that mine, refine, produce, smelt, and mill industrial ores, including copper,
    lead, zinc, radium, vanadium, nickel, tin, titanium, and other related materials.
    """

    Gold: int = 10150040
    """Companies principally engaged in gold exploration, mining, processing, extraction, and smelting."""

    Silver: int = 10150050
    """Companies principally engaged in silver exploration, mining, processing, extraction, and smelting."""

    OtherPreciousMetalsAndMining: int = 10150060
    """
    Companies that mine, refine, produce, smelt, and mill precious metals, including silver,
    platinum, palladium, diamond, and other related minerals.
    """

    CokingCoal: int = 10160010
    """Companies that produce coking coal."""

    Steel: int = 10160020
    """
    Companies that produce steel plates, steel sheets, bar and rod materials, structural
    steel, steel pipes and tubes, and stainless steel.
    """

    AutoAndTruckDealerships: int = 10200010
    """
    Companies engaged in the specialty retail of new and used automobiles, trucks, and other
    vehicles through the operation and/or franchising of dealerships.
    """

    AutoManufacturers: int = 10200020
    """Leading worldwide designers and manufacturers of passenger cars and trucks."""

    AutoParts: int = 10200030
    """
    Companies that manufacture motor vehicle parts and accessories, including rubber and
    plastic products, such as tires and inner tubes, but do not manufacture complete car bodies.
    """

    RecreationalVehicles: int = 10200040
    """
    Companies that manufacture recreational vehicles, including self-contained motor homes,
    campers, all-terrain vehicles, travel/camper trailers, and snowmobiles.
    """

    Furnishings: int = 10220010
    """
    Companies that manufacture and market wooden, metal, and upholstered furniture,
    mattresses, bedsprings, lighting fixtures, wooden flooring, wallpaper, and household
    products, such as utensils, cutlery, tableware, and appliances.
    """

    FixturesAndAppliances: int = 10220010
    """
    Companies that manufacture and market wooden, metal, and upholstered furniture,
    mattresses, bedsprings, lighting fixtures, wooden flooring, wallpaper, and household
    products, such as utensils, cutlery, tableware, and appliances.
    """

    ResidentialConstruction: int = 10230010
    """
    Companies that build and renovate residential buildings, such as single-family houses,
    apartments, and hotels.
    """

    TextileManufacturing: int = 10240010
    """
    Companies that manufacture and mill textile products, including apparel fabrics, bedding
    and accessories, home furnishing fabrics, carpets and rugs, curtains and drapes, and
    other milled textile products.
    """

    ApparelManufacturing: int = 10240020
    """
    Companies that manufacture, design, market, source, and sell all lines of clothing for
    men, women, and children. Also includes companies that manufacture or distribute
    buttons, buckles, and other apparel parts.
    """

    FootwearAndAccessories: int = 10240030
    """
    Companies that manufacture, design, market, and sell lines of footwear and luggage,
    handbags and purses, belts, and other leather goods.
    """

    PackagingAndContainers: int = 10250010
    """
    Companies that manufacture and market paper, plastic, metal, and glass packaging
    products, including corrugated boxes, cardboard containers, bottles, cans, and plastic
    foam and containers.
    """

    PersonalServices: int = 10260010
    """
    Companies that provide services of a personal nature or that are particularly structured
    for the individual or group being served, including veterinary services, funeral and
    cemetery services, child care services, portrait and photo services, tax preparation and
    legal services, and other miscellaneous personal services.
    """

    Restaurants: int = 10270010
    """
    Companies that own, operate, and franchise full-service restaurants that engage in the
    retail sale of prepared food and drink.
    """

    ApparelRetail: int = 10280010
    """Companies engaged in the retail sale of clothing, shoes, and accessories."""

    DepartmentStores: int = 10280020
    """
    Companies engaged in the retail sale of a diverse mix of merchandise, emphasizing
    fashion apparel and accessories, home furnishings, electronics, and cosmetics.
    """

    HomeImprovementRetail: int = 10280030
    """
    Companies engaged in the retail sale of home improvement items, such as lumber, carpets,
    hardware and other building materials, plants and other garden supplies, and various
    other items for the home.
    """

    LuxuryGoods: int = 10280040
    """
    Companies engaged in the specialty retail of luxury items, including jewelry, watches,
    crystal, clothing, handbags, and accessories.
    """

    InternetRetail: int = 10280050
    """
    Companies engaged in the online retail sale of a diverse mix of merchandise. Excludes
    companies that target the travel industry and are classified in travel services.
    """

    SpecialtyRetail: int = 10280060
    """
    Companies engaged in the specialty retail of various goods and products not covered in a
    specific industry group. This group includes retailers such as bookstores, office-supply
    stores, gas stations, pawn shops, novelty shops, auto-parts stores, electronics stores,
    home furnishing stores, sporting goods stores, toy and hobby stores, music and video
    stores, and many other miscellaneous retailers.
    """

    Gambling: int = 10290010
    """
    Companies that own, operate, or manage lawful gaming activities and events, such as
    horse and dog racing, online gaming, bingo, and video lottery, as well as companies that
    supply products or services to gaming operators. It excludes companies operating casinos.
    """

    Leisure: int = 10290020
    """
    Companies that manufacture, design, market, and sell bicycles, sporting goods,
    photographic equipment, recreational equipment, toys, and other leisure products or services.
    """

    Lodging: int = 10290030
    """
    Companies that develop, manage, own, and operate lodging facilities, including motels,
    extended-stay and full-service hotels, and economy hotels and inns.
    """

    ResortsAndCasinos: int = 10290040
    """
    Companies that own, operate, and manage resort properties, including beach clubs,
    time-share properties, and luxury resort hotels and that conduct casino gaming operations.
    """

    TravelServices: int = 10290050
    """Companies that offer travel-related products or services, including online travel services."""

    AssetManagement: int = 10310010
    """
    Investment management firms offering diversified services such as asset administration,
    investment advice, portfolio or mutual fund management, money management, and venture capital.
    """

    BanksDiversified: int = 10320010
    """
    Global, diverse financial institutions serving the corporate and consumer needs of
    retail banking, investment banking, trust management, credit cards and mortgage banking.
    """

    BanksRegional: int = 10320020
    """
    Regional, diverse financial institutions serving the corporate, government, and consumer
    needs of retail banking, investment banking, trust management, credit cards, mortgage
    banking, savings and loan associations, building societies, cooperative banks, and homestead.
    """

    MortgageFinance: int = 10320030
    """Companies that originate, purchase, sell, and service home mortgage and equity loans."""

    CapitalMarkets: int = 10330010
    """
    Large, major investment houses offering investment banking, merchant banking,
    underwriting, brokerage, research, advisory, and trading services to broad-based
    national and international markets.
    """

    FinancialDataAndStockExchanges: int = 10330020
    """
    Companies that operate security exchanges, including companies that offer financial data
    such as ratings, investment research, and other research solutions.
    """

    InsuranceLife: int = 10340010
    """
    Companies that underwrite, market, and distribute life insurance and related products to
    individuals and families.
    """

    InsurancePropertyAndCasualty: int = 10340020
    """
    Companies that underwrite, market, and distribute fire, marine, and casualty insurance
    for property and other tangible assets.
    """

    InsuranceReinsurance: int = 10340030
    """Companies that underwrite and sell reinsurance."""

    InsuranceSpecialty: int = 10340040
    """
    Companies that underwrite, market, and distribute accident and health, sickness,
    mortgage, and other specialty or supplemental insurance to individuals and families.
    """

    InsuranceBrokers: int = 10340050
    """
    Companies acting primarily as agents or intermediaries in creating insurance contracts
    between clients and insurance companies.
    """

    InsuranceDiversified: int = 10340060
    """
    Insurance companies with diversified interests in life, health, and property and
    casualty insurance.
    """

    ShellCompanies: int = 10350010
    """
    A development-stage company with no or minimal revenue. Includes capital pool, blank
    check, shell, and holding companies.
    """

    FinancialConglomerates: int = 10350020
    """
    Companies that provide financial services, including banking, insurance, and capital
    markets, but with no dominant business line or source of revenue.
    """

    CreditServices: int = 10360010
    """
    Companies that extend credit and make loans to individuals and businesses through credit
    cards, installment loans, student loans, and business loans that are associated with
    other consumer and business credit instruments.
    """

    RealEstateDevelopment: int = 10410010
    """
    Companies that develop real estate and same properties held as inventory, or sold to
    others after development, with no specific portfolio composition.
    """

    RealEstateServices: int = 10410020
    """
    Companies that operate, manage, and lease real property with no specific portfolio
    composition. Includes real estate services like brokers and agents but excludes
    companies classified in the real estate â€“ development industry.
    """

    RealEstateDiversified: int = 10410030
    """
    Companies engaged in multiple real estate activities, including development, sales,
    management, and related services. Excludes companies classified in real estate
    development and real estate services.
    """

    REITHealthcareFacilities: int = 10420010
    """
    Self-administered real estate investment trusts engaged in the development, acquisition,
    management, and disposition of healthcare properties, including long-term-care
    facilities, acute-care and rehab hospitals, psychiatric facilities, and substance-abuse centers.
    """

    REITHotelAndMotel: int = 10420020
    """
    Self-administered real estate investment trusts engaged in the development, acquisition,
    management, and disposition of lodging properties, including full- and limited-service
    hotels and motels.
    """

    REITIndustrial: int = 10420030
    """
    Self-administered real estate investment trusts engaged in the development, acquisition,
    management, and disposition of industrial properties, including bulk warehouses,
    self-storage facilities, distribution facilities, and other light industrial facilities.
    """

    REITOffice: int = 10420040
    """
    Self-administered real estate investment trusts engaged in the development, acquisition,
    management, and disposition of office properties, including office buildings, complexes,
    and centers.
    """

    REITResidential: int = 10420050
    """
    Self-administered real estate investment trusts engaged in the development, acquisition,
    management, and disposition of residential properties, including apartments, multifamily
    and single-family mortgage loans, manufactured housing, mobile-home parks, and other
    residential properties.
    """

    REITRetail: int = 10420060
    """
    Self-administered real estate investment trusts engaged in the development, acquisition,
    management, and disposition of retail properties, including community shopping centers,
    factory outlet shopping centers, enclosed shopping malls, strip centers, restaurants,
    and other retail properties.
    """

    REITMortgage: int = 10420070
    """
    Self-administered real estate investment trusts engaged in the acquisition, management,
    and disposition of mortgage-backed securities. Also includes companies that provide
    financing for income-producing real estate by purchasing or originating mortgages and
    mortgage-backed securities; and earns income from the interest on these investments.
    """

    REITSpecialty: int = 10420080
    """
    Self-administered real estate investment trusts engaged in the acquisition, management,
    and disposition of properties not classified elsewhere. Includes trusts that operate,
    lease, and invest in telecom towers, advertising spaces, timberland properties, and
    other properties not classified elsewhere.
    """

    REITDiversified: int = 10420090
    """
    Self-administered real estate investment trusts engaged in the acquisition, management,
    and disposition of diversified property holdings, with no specific portfolio composition.
    """

    BeveragesBrewers: int = 20510010
    """Companies that manufacture, sell, and distribute malt-based beverages, beers, and ales."""

    BeveragesWineriesAndDistilleries: int = 20510020
    """Companies that manufacture, sell, and distribute distilled liquors and wine."""

    BeveragesNonAlcoholic: int = 20520010
    """
    Companies that manufacture, sell, and distribute soft drinks, carbonated and spring
    water, fruit juices, and other nonalcoholic beverages.
    """

    Confectioners: int = 20525010
    """
    Companies that manufacture and refine raw sugar, syrup or finished cane and beet sugar,
    candy and chewing gum, chocolate, and cocoa products.
    """

    FarmProducts: int = 20525020
    """
    Companies that produce, raise, and grow agricultural and farm-based food products,
    including fruits, vegetables, other crop products, cattle, and eggs. Also includes
    seafood products.
    """

    HouseholdAndPersonalProducts: int = 20525030
    """
    Companies that manufacture and market soaps and other detergents, polishing and
    sanitation goods and produce glycerin from vegetable and animal fats and oils. Also
    includes companies that manufacture and market personal-care products, including
    perfume, cosmetics, and other toilet preparations, infant and adult sanitary paper
    products, shaving razors and blades.
    """

    PackagedFoods: int = 20525040
    """
    Companies that process and package food products, including frozen foods, grain
    products, canned foods, snack foods, health supplements, vitamins, and pet products.
    """

    EducationAndTrainingServices: int = 20540010
    """
    Companies that provide educational and training services, including college and
    junior-college courses, higher-education programs, technical and vocational training,
    and other education services.
    """

    DiscountStores: int = 20550010
    """Companies engaged in the retail sale of a variety of merchandise at low and discounted prices."""

    FoodDistribution: int = 20550020
    """
    Companies primarily engaged in the distribution and supply of food products, including
    packaged goods, meat, dairy products, frozen foods, and related groceries to grocery
    stores, restaurants, and other food-service centers.
    """

    GroceryStores: int = 20550030
    """
    Companies engaged in the retail sale of groceries, including dry goods, meat, produce,
    frozen foods, dairy products, seafood, deli/bakery, and nonfood items.
    """

    Tobacco: int = 20560010
    """
    Companies that manufacture and market cigarettes, e-cigarettes, snuff, cigars, chewing
    tobacco, and all other tobacco products.
    """

    Biotechnology: int = 20610010
    """
    Biotech and biopharmaceutical companies engaged in research, discovery, development, and
    production of innovative drug and drug-related technologies.
    """

    DrugManufacturersGeneral: int = 20620010
    """
    Major, global pharmaceutical manufacturers offering a broad and diverse line of drug and
    healthcare products; industry leaders that have made a significant commitment to the
    research and development of a long pipeline of drugs.
    """

    DrugManufacturersSpecialtyAndGeneric: int = 20620020
    """
    Companies engaged in development and discovery of branded forms of drug, drug-related
    products, generic drug products, and animal-related drugs. Also includes companies that
    cultivate, process, and farm cannabis or marijuana.
    """

    HealthcarePlans: int = 20630010
    """
    Companies that offer a wide variety of managed health products and services, including
    HMOs, PPOs, and other health insurance plans, and are largely U.S.-domiciled.
    """

    MedicalCareFacilities: int = 20645010
    """
    Companies that provide medical services through the ownership and operation of
    hospitals, and other auxiliary healthcare-related services, including healthcare
    staffing and ambulatory services. Also, companies that operate long-term-care
    facilities, such as assisted-living centers, nursing and retirement homes,
    substance-abuse centers, and centers for rehabilitation services.
    """

    PharmaceuticalRetailers: int = 20645020
    """
    Companies engaged in the retail sale of prescription drugs and patent medicines as well
    as a number of related lines, such as cosmetics, toiletries, and novelty merchandise.
    """

    HealthInformationServices: int = 20645030
    """
    Companies that develop and provide comprehensive physician practice management systems
    and software for hospitals, medical practices, and managed-care organizations.
    """

    MedicalDevices: int = 20650010
    """
    Companies that develop, manufacture, and market medical and surgical equipment and
    machinery, including orthopedic products, respiratory care equipment, x-ray equipment,
    laser systems, implants, pacemakers, and other major medical machines and apparatus.
    """

    MedicalInstrumentsAndSupplies: int = 20650020
    """
    Companies that develop, design, manufacture, and market medical and dental instruments
    and supplies, including wheelchairs, catheters, needles, syringes, eyewear and eyecare
    products, and other health-related supplies.
    """

    DiagnosticsAndResearch: int = 20660010
    """
    Companies that provide laboratory testing services through imaging and other diagnostic
    services to the medical industry.
    """

    MedicalDistribution: int = 20670010
    """
    Companies primarily engaged in the distribution and supply of medical instruments and
    supplies, ophthalmic goods, and other health-related items to the medical and healthcare industry.
    """

    UtilitiesIndependentPowerProducers: int = 20710010
    """
    Companies that own and operate merchant power generation facilities and sell electricity
    into retail and wholesale markets.
    """

    UtilitiesRenewable: int = 20710020
    """
    Companies that generate, produce, or transmit electric energy from renewable sources,
    including hydropower, wind, geothermal, biomass, solar, tidal, and wave.
    """

    UtilitiesRegulatedWater: int = 20720010
    """Companies that distribute water for sale, including water-treatment companies."""

    UtilitiesRegulatedElectric: int = 20720020
    """Companies that generate, transmit, or distribute electric energy for sale."""

    UtilitiesRegulatedGas: int = 20720030
    """Companies that transmit, store, or distribute natural gas."""

    UtilitiesDiversified: int = 20720040
    """
    Companies engaged in the regulated generation, transmission, or distribution of
    electricity and natural gas, merchant power generation facilities, and energy marketing operations.
    """

    TelecomServices: int = 30810010
    """
    Companies that provide local, national, international, and long-distance phone services,
    as well as companies offering wireless services. Also includes companies that provide
    services for faxing, prepaid phone cards, pay phones, and directory assistance, or that
    provide Internet access services.
    """

    AdvertisingAgencies: int = 30820010
    """
    Companies engaged in full-service advertising operations, including the planning,
    creating, producing, and placing of advertising in media such as TV, radio, and print.
    Also includes companies providing marketing services, including outdoor advertising,
    promotional materials, direct-mail services, digital marketing, event management
    services, and marketing research services.
    """

    Publishing: int = 30820020
    """
    Companies that publish periodicals, such as magazines, comic books, trade journals,
    books, pamphlets, e-publications, and newspapers.
    """

    Broadcasting: int = 30820030
    """
    Companies that own or operate radio broadcast stations and provide and produce radio
    programming services, television programming services, and television broadcast
    stations. Also includes companies providing Internet-based video on demand and
    pay-per-view programming services.
    """

    Entertainment: int = 30820040
    """
    Companies primarily operating with diversified holdings in movies, television, and other
    media-based entertainment. Also includes companies that produce and distribute motion
    pictures, television programmers, video, and the operation of movie theaters; and
    provide cable television services.
    """

    InternetContentAndInformation: int = 30830010
    """
    Companies that provide content, Internet navigation services, and reference guide
    information for the World Wide Web through its platforms, including social media, search
    engines, and networking platform companies.
    """

    ElectronicGamingAndMultimedia: int = 30830020
    """
    Companies that primarily develop or publish video games and other multimedia software
    applications for devices that include personal computers, video game systems,
    cellphones, tablets, and other portable media players.
    """

    OilAndGasDrilling: int = 30910010
    """Companies primarily engaged in the drilling for petroleum and natural gas."""

    OilAndGasEAndP: int = 30910020
    """Energy companies which are primarily engaged in oil and gas exploration and production."""

    OilAndGasIntegrated: int = 30910030
    """
    Major energy companies engaged in the diverse aspects of oil and gas operations,
    including crude oil and gas exploration, production, manufacturing, refining, marketing,
    and transportation.
    """

    OilAndGasMidstream: int = 30910040
    """
    Companies that own and operate oilfield pipelines and are involved in the gathering,
    processing, and transportation of natural crude petroleum.
    """

    OilAndGasRefiningAndMarketing: int = 30910050
    """Companies that refine, gather, market, and sell petroleum and petroleum products."""

    OilAndGasEquipmentAndServices: int = 30910060
    """
    Companies that provide oilfield services and equipment for activities such as contract
    drilling and seismic surveys. Also includes equipment and tool rental, pumping and
    processing services, and inspection and contracting services.
    """

    ThermalCoal: int = 30920010
    """
    Companies that mine thermal coal, which is used for generating energy. Excludes
    companies that mine coking coal to make steel.
    """

    Uranium: int = 30920020
    """Companies that mine, refine, produce, and mill uranium and uranium-related materials."""

    AerospaceAndDefense: int = 31010010
    """
    Companies that manufacture aerospace and defense products, including aircraft and
    aircraft parts, tanks, guided missiles, space vehicles, ships and marine equipment, and
    other aerospace and defense components and systems, as well as companies supporting
    these products through repair and maintenance services.
    """

    SpecialtyBusinessServices: int = 31020010
    """
    Companies that provide services to the commercial or business market, including
    information distribution, warehousing, graphic design, accounting, printing, and
    miscellaneous services.
    """

    ConsultingServices: int = 31020020
    """
    Companies that provide management, research, and consulting services to businesses and
    other agencies. Includes companies engaged in strategic and management consulting
    services, interior design, and information and analytics.
    """

    RentalAndLeasingServices: int = 31020030
    """
    Companies that rent or lease durable goods to the commercial and consumer market,
    including cars and trucks, medical and industrial equipment, appliances and tools, and
    miscellaneous goods.
    """

    SecurityAndProtectionServices: int = 31020040
    """
    Companies that provide security and protective services, including protective or
    preventive devices, security guards and inspection services, security alarm and
    monitoring systems, detention and correction facilities, and other security-based services.
    """

    StaffingAndEmploymentServices: int = 31020050
    """
    Companies that provide staffing and employment services, including temporary staffing
    and permanent placement, outsources workforce and other employment-related services to
    businesses and government. Also includes companies providing online staffing services.
    """

    Conglomerates: int = 31030010
    """
    Companies that are in several separate lines of business with no single line providing
    the dominant source of revenue or income.
    """

    EngineeringAndConstruction: int = 31040010
    """
    Companies engaged in the design, construction, or contracting of industrial and
    nonresidential structures, streets and highways, bridges and tunnels, docks and piers,
    dams and water projects, utility lines, and other large building projects. Also includes
    companies that provide engineering consulting and architectural services to consumer and
    commercial clients.
    """

    InfrastructureOperations: int = 31040020
    """
    Companies that develop, finance, maintain, or manage infrastructure operations such as
    ports, airports, and roadways.
    """

    BuildingProductsAndEquipment: int = 31040030
    """
    Companies that manufacture building and construction products and materials, including
    ceramic floor and wall tiles, plumbing, HVAC, framing structures, and doors. Excludes
    companies that are classified in the building materials industry.
    """

    FarmAndHeavyConstructionMachinery: int = 31050010
    """
    Companies that manufacture agricultural and construction machinery, including tractors,
    planting and harvesting machines, cranes, earthmovers, excavators, and related equipment
    and machinery. Includes truck manufacturers that provide local and long-haul trucking
    and transfer services for freight and cargo.
    """

    IndustrialDistribution: int = 31060010
    """
    Companies primarily engaged in the distribution and supply of industrial equipment,
    including construction and farming machinery, garden equipment and supplies, and other
    industrial items to a diversified market of redistributors and end users.
    """

    BusinessEquipmentAndSupplies: int = 31070010
    """
    Companies that manufacture and market office and business machines, such as copiers, fax
    machines, postage meters, point-of-sale terminals, and ATMs.
    """

    SpecialtyIndustrialMachinery: int = 31070020
    """
    Companies engaged in diversified machinery manufacturing operations, including paper and
    food production machines, printing machinery, engines and turbines, air and gas
    processors, blowers and fans, furnaces and ovens, and other general and special industry machines.
    """

    MetalFabrication: int = 31070030
    """
    Companies that fabricate, stamp, or form iron, steel, or other metals into products such
    as structured components by cutting, bending, and assembling processes of basic metals
    to create a final product.
    """

    PollutionAndTreatmentControls: int = 31070040
    """
    Companies that manufacture equipment designed to control pollution, including control
    systems, hazardous waste disposal systems, recovery systems, treatment processes,
    filtration systems, cleaning and separation applications, and recycling machinery.
    """

    ToolsAndAccessories: int = 31070050
    """
    Companies that manufacture small, hand-held tools, including power-driven drills,
    welding apparatus, lawn and garden equipment, and other power or manually operated tools
    and accessories, such as hardware, nuts, bolts, rivets, and other fasteners.
    """

    ElectricalEquipmentAndParts: int = 31070060
    """
    Companies that manufacture electrical equipment (such as smart-grid electrical
    equipment, utility metering, high- and low-voltage electrical equipment, transmission
    control devices, switches, and lighting distribution boxes), batteries, electrical wires
    and cables, and automation control.
    """

    AirportsAndAirServices: int = 31080010
    """
    Air transportation companies that provide related air services, including helicopter
    transportation, air-charter services, in-flight catering services, and air emergency and
    business-related services.
    """

    Airlines: int = 31080020
    """
    Major international passenger airline companies that fly a wide range of domestic and
    international routes.
    """

    Railroads: int = 31080030
    """
    Companies that provide transportation of freight by line-haul railroad as well as
    related railroad equipment and repair services. Includes companies offering passenger
    services via railway and roadways.
    """

    MarineShipping: int = 31080040
    """
    Companies that transport freight and cargo via water and operate marine ports. Includes
    companies that provide passenger services via water.
    """

    Trucking: int = 31080050
    """
    Companies that provide local and long-haul trucking and transfer services for freight
    and cargo.
    """

    IntegratedFreightAndLogistics: int = 31080060
    """
    Companies that transport freight and cargo via diversified methods such as railroads,
    airlines, and waterways.
    """

    WasteManagement: int = 31090010
    """
    Companies that collect, treat, store, transfer, recycle, and dispose of waste materials,
    as well as companies that provide supporting environmental, engineering, and consulting services.
    """

    InformationTechnologyServices: int = 31110010
    """
    Companies that provide computer-system design, network and systems operations, repair
    services, technical support, computer technology consulting, development, and
    implementation services.
    """

    SoftwareApplication: int = 31110020
    """
    Companies that primarily design, develop, market, and support application software
    programs, including those that are cloud-based, for specific consumer and business functions.
    """

    SoftwareInfrastructure: int = 31110030
    """
    Companies that develop, design, support, and provide system software and services,
    including operating systems, networking software and devices, web portal services, cloud
    storage, and related services.
    """

    CommunicationEquipment: int = 31120010
    """
    Companies that design, develop, manufacture, and market equipment for the communication
    industry, including fiber-optic cable; telecom peripherals; voice and data transmission
    and processing equipment; satellite products and equipment; video-conferencing systems
    and equipment; and interactive communication systems. Also includes companies that offer
    networking products that provide connectivity solutions for multi-use computing environments.
    """

    ComputerHardware: int = 31120020
    """
    Companies that design, manufacture, and market computer systems, high mainframe servers,
    supercomputer, and 3D printers and scanners. Also includes companies that manufacture
    and market data storage products and other storage and backup devices for computers.
    """

    ConsumerElectronics: int = 31120030
    """
    Companies that manufacture and market mobile communication products and household audio
    and video equipment, including radios, stereos, televisions, DVD player and personal use
    Drones. Excludes electric household appliances.
    """

    ElectronicComponents: int = 31120040
    """
    Companies that design, develop, manufacture, and market electronic devices, including
    electron tubes; electronic capacitors; electronic resistors; electronic coil and
    transformers; sensors; LED, TFT, and LCD displays; electronic connectors; printed
    circuit boards; circuit assemblies; and other general-purpose electronics components and products.
    """

    ElectronicsAndComputerDistribution: int = 31120050
    """
    Companies primarily engaged in the distribution, supply, and support of computers and
    computer systems, peripheral equipment, and software and other technological goods,
    including electronic equipment and appliances, electrical cable, wires, and other
    components to various consumer, commercial, and manufacturing customers.
    """

    ScientificAndTechnicalInstruments: int = 31120060
    """
    Companies that design, develop, manufacture, and market sophisticated electronics of a
    technical nature, including lab apparatus, process and flow control devices, precise
    measurement and signal processing tools, search and navigation equipment, and other
    scientific or technical analytical or measuring devices.
    """

    SemiconductorEquipmentAndMaterials: int = 31130010
    """
    Companies that design, develop, manufacture, and market equipment, spare parts, tools,
    cleaning devices, and related materials for the semiconductor industry.
    """

    Semiconductors: int = 31130020
    """
    Semiconductor companies that design, manufacture, and market integrated circuits,
    microprocessors, logic devices, chipsets, and memory chips for a wide variety of users.
    Includes companies that design, manufacture, and market general-application integrated
    circuits and memory and memory-intensive products.
    """

    Solar: int = 31130030
    """Companies that design, manufacture, market, or install solar power systems and components."""


class FundamentalProperty(System.Enum):
    """The fundamental property to access"""

    Market = 0

    DollarVolume = 1

    Volume = 2

    HasFundamentalData = 3

    PriceFactor = 4

    SplitFactor = 5

    Value = 6

    Price = 7

    CompanyReference_CompanyId = 8

    CompanyReference_ShortName = 9

    CompanyReference_StandardName = 10

    CompanyReference_LegalName = 11

    CompanyReference_CountryId = 12

    CompanyReference_CIK = 13

    CompanyReference_CompanyStatus = 14

    CompanyReference_FiscalYearEnd = 15

    CompanyReference_IndustryTemplateCode = 16

    CompanyReference_PrimaryShareClassID = 17

    CompanyReference_PrimarySymbol = 18

    CompanyReference_PrimaryExchangeID = 19

    CompanyReference_BusinessCountryID = 20

    CompanyReference_LegalNameLanguageCode = 21

    CompanyReference_Auditor = 22

    CompanyReference_AuditorLanguageCode = 23

    CompanyReference_Advisor = 24

    CompanyReference_AdvisorLanguageCode = 25

    CompanyReference_IsLimitedPartnership = 26

    CompanyReference_IsREIT = 27

    CompanyReference_PrimaryMIC = 28

    CompanyReference_ReportStyle = 29

    CompanyReference_YearofEstablishment = 30

    CompanyReference_IsLimitedLiabilityCompany = 31

    CompanyReference_ExpectedFiscalYearEnd = 32

    SecurityReference_SecuritySymbol = 33

    SecurityReference_ExchangeId = 34

    SecurityReference_CurrencyId = 35

    SecurityReference_IPODate = 36

    SecurityReference_IsDepositaryReceipt = 37

    SecurityReference_DepositaryReceiptRatio = 38

    SecurityReference_SecurityType = 39

    SecurityReference_ShareClassDescription = 40

    SecurityReference_ShareClassStatus = 41

    SecurityReference_IsPrimaryShare = 42

    SecurityReference_IsDividendReinvest = 43

    SecurityReference_IsDirectInvest = 44

    SecurityReference_InvestmentId = 45

    SecurityReference_IPOOfferPrice = 46

    SecurityReference_DelistingDate = 47

    SecurityReference_DelistingReason = 48

    SecurityReference_MIC = 49

    SecurityReference_CommonShareSubType = 50

    SecurityReference_IPOOfferPriceRange = 51

    SecurityReference_ExchangeSubMarketGlobalId = 52

    SecurityReference_ConversionRatio = 53

    SecurityReference_ParValue = 54

    SecurityReference_TradingStatus = 55

    SecurityReference_MarketDataID = 56

    FinancialStatements_PeriodEndingDate_OneMonth = 57

    FinancialStatements_PeriodEndingDate_TwoMonths = 58

    FinancialStatements_PeriodEndingDate_ThreeMonths = 59

    FinancialStatements_PeriodEndingDate_SixMonths = 60

    FinancialStatements_PeriodEndingDate_NineMonths = 61

    FinancialStatements_PeriodEndingDate_TwelveMonths = 62

    FinancialStatements_FileDate_OneMonth = 63

    FinancialStatements_FileDate_TwoMonths = 64

    FinancialStatements_FileDate_ThreeMonths = 65

    FinancialStatements_FileDate_SixMonths = 66

    FinancialStatements_FileDate_NineMonths = 67

    FinancialStatements_FileDate_TwelveMonths = 68

    FinancialStatements_AccessionNumber_OneMonth = 69

    FinancialStatements_AccessionNumber_TwoMonths = 70

    FinancialStatements_AccessionNumber_ThreeMonths = 71

    FinancialStatements_AccessionNumber_SixMonths = 72

    FinancialStatements_AccessionNumber_NineMonths = 73

    FinancialStatements_FormType_OneMonth = 74

    FinancialStatements_FormType_TwoMonths = 75

    FinancialStatements_FormType_ThreeMonths = 76

    FinancialStatements_FormType_SixMonths = 77

    FinancialStatements_FormType_NineMonths = 78

    FinancialStatements_FormType_TwelveMonths = 79

    FinancialStatements_PeriodAuditor_OneMonth = 80

    FinancialStatements_PeriodAuditor_TwoMonths = 81

    FinancialStatements_PeriodAuditor_ThreeMonths = 82

    FinancialStatements_PeriodAuditor_SixMonths = 83

    FinancialStatements_PeriodAuditor_NineMonths = 84

    FinancialStatements_PeriodAuditor_TwelveMonths = 85

    FinancialStatements_AuditorReportStatus_OneMonth = 86

    FinancialStatements_AuditorReportStatus_TwoMonths = 87

    FinancialStatements_AuditorReportStatus_ThreeMonths = 88

    FinancialStatements_AuditorReportStatus_SixMonths = 89

    FinancialStatements_AuditorReportStatus_NineMonths = 90

    FinancialStatements_AuditorReportStatus_TwelveMonths = 91

    FinancialStatements_InventoryValuationMethod_OneMonth = 92

    FinancialStatements_InventoryValuationMethod_TwoMonths = 93

    FinancialStatements_InventoryValuationMethod_ThreeMonths = 94

    FinancialStatements_InventoryValuationMethod_SixMonths = 95

    FinancialStatements_InventoryValuationMethod_NineMonths = 96

    FinancialStatements_InventoryValuationMethod_TwelveMonths = 97

    FinancialStatements_NumberOfShareHolders_OneMonth = 98

    FinancialStatements_NumberOfShareHolders_TwoMonths = 99

    FinancialStatements_NumberOfShareHolders_ThreeMonths = 100

    FinancialStatements_NumberOfShareHolders_SixMonths = 101

    FinancialStatements_NumberOfShareHolders_NineMonths = 102

    FinancialStatements_NumberOfShareHolders_TwelveMonths = 103

    FinancialStatements_PeriodType_OneMonth = 104

    FinancialStatements_PeriodType_TwoMonths = 105

    FinancialStatements_PeriodType_ThreeMonths = 106

    FinancialStatements_PeriodType_SixMonths = 107

    FinancialStatements_PeriodType_NineMonths = 108

    FinancialStatements_PeriodType_TwelveMonths = 109

    FinancialStatements_TotalRiskBasedCapital_OneMonth = 110

    FinancialStatements_TotalRiskBasedCapital_ThreeMonths = 111

    FinancialStatements_TotalRiskBasedCapital_SixMonths = 112

    FinancialStatements_TotalRiskBasedCapital_NineMonths = 113

    FinancialStatements_TotalRiskBasedCapital_TwelveMonths = 114

    FinancialStatements_IncomeStatement_ISFileDate_OneMonth = 115

    FinancialStatements_IncomeStatement_ISFileDate_TwoMonths = 116

    FinancialStatements_IncomeStatement_ISFileDate_ThreeMonths = 117

    FinancialStatements_IncomeStatement_ISFileDate_SixMonths = 118

    FinancialStatements_IncomeStatement_ISFileDate_NineMonths = 119

    FinancialStatements_IncomeStatement_ISFileDate_TwelveMonths = 120

    FinancialStatements_IncomeStatement_Amortization_OneMonth = 121

    FinancialStatements_IncomeStatement_Amortization_TwoMonths = 122

    FinancialStatements_IncomeStatement_Amortization_ThreeMonths = 123

    FinancialStatements_IncomeStatement_Amortization_SixMonths = 124

    FinancialStatements_IncomeStatement_Amortization_NineMonths = 125

    FinancialStatements_IncomeStatement_Amortization_TwelveMonths = 126

    FinancialStatements_IncomeStatement_SecuritiesAmortization_OneMonth = 127

    FinancialStatements_IncomeStatement_SecuritiesAmortization_ThreeMonths = 128

    FinancialStatements_IncomeStatement_SecuritiesAmortization_SixMonths = 129

    FinancialStatements_IncomeStatement_SecuritiesAmortization_NineMonths = 130

    FinancialStatements_IncomeStatement_SecuritiesAmortization_TwelveMonths = 131

    FinancialStatements_IncomeStatement_CostOfRevenue_OneMonth = 132

    FinancialStatements_IncomeStatement_CostOfRevenue_TwoMonths = 133

    FinancialStatements_IncomeStatement_CostOfRevenue_ThreeMonths = 134

    FinancialStatements_IncomeStatement_CostOfRevenue_SixMonths = 135

    FinancialStatements_IncomeStatement_CostOfRevenue_NineMonths = 136

    FinancialStatements_IncomeStatement_CostOfRevenue_TwelveMonths = 137

    FinancialStatements_IncomeStatement_Depletion_ThreeMonths = 138

    FinancialStatements_IncomeStatement_Depletion_SixMonths = 139

    FinancialStatements_IncomeStatement_Depletion_NineMonths = 140

    FinancialStatements_IncomeStatement_Depletion_TwelveMonths = 141

    FinancialStatements_IncomeStatement_Depreciation_OneMonth = 142

    FinancialStatements_IncomeStatement_Depreciation_ThreeMonths = 143

    FinancialStatements_IncomeStatement_Depreciation_SixMonths = 144

    FinancialStatements_IncomeStatement_Depreciation_NineMonths = 145

    FinancialStatements_IncomeStatement_Depreciation_TwelveMonths = 146

    FinancialStatements_IncomeStatement_DepreciationAndAmortization_OneMonth = 147

    FinancialStatements_IncomeStatement_DepreciationAndAmortization_TwoMonths = 148

    FinancialStatements_IncomeStatement_DepreciationAndAmortization_ThreeMonths = 149

    FinancialStatements_IncomeStatement_DepreciationAndAmortization_SixMonths = 150

    FinancialStatements_IncomeStatement_DepreciationAndAmortization_NineMonths = 151

    FinancialStatements_IncomeStatement_DepreciationAndAmortization_TwelveMonths = 152

    FinancialStatements_IncomeStatement_DepreciationAmortizationDepletion_OneMonth = 153

    FinancialStatements_IncomeStatement_DepreciationAmortizationDepletion_TwoMonths = 154

    FinancialStatements_IncomeStatement_DepreciationAmortizationDepletion_ThreeMonths = 155

    FinancialStatements_IncomeStatement_DepreciationAmortizationDepletion_SixMonths = 156

    FinancialStatements_IncomeStatement_DepreciationAmortizationDepletion_NineMonths = 157

    FinancialStatements_IncomeStatement_DepreciationAmortizationDepletion_TwelveMonths = 158

    FinancialStatements_IncomeStatement_NetIncomeDiscontinuousOperations_OneMonth = 159

    FinancialStatements_IncomeStatement_NetIncomeDiscontinuousOperations_TwoMonths = 160

    FinancialStatements_IncomeStatement_NetIncomeDiscontinuousOperations_ThreeMonths = 161

    FinancialStatements_IncomeStatement_NetIncomeDiscontinuousOperations_SixMonths = 162

    FinancialStatements_IncomeStatement_NetIncomeDiscontinuousOperations_NineMonths = 163

    FinancialStatements_IncomeStatement_NetIncomeDiscontinuousOperations_TwelveMonths = 164

    FinancialStatements_IncomeStatement_ExciseTaxes_ThreeMonths = 165

    FinancialStatements_IncomeStatement_ExciseTaxes_SixMonths = 166

    FinancialStatements_IncomeStatement_ExciseTaxes_NineMonths = 167

    FinancialStatements_IncomeStatement_ExciseTaxes_TwelveMonths = 168

    FinancialStatements_IncomeStatement_NetIncomeExtraordinary_OneMonth = 169

    FinancialStatements_IncomeStatement_NetIncomeExtraordinary_TwoMonths = 170

    FinancialStatements_IncomeStatement_NetIncomeExtraordinary_ThreeMonths = 171

    FinancialStatements_IncomeStatement_NetIncomeExtraordinary_SixMonths = 172

    FinancialStatements_IncomeStatement_NetIncomeExtraordinary_NineMonths = 173

    FinancialStatements_IncomeStatement_NetIncomeExtraordinary_TwelveMonths = 174

    FinancialStatements_IncomeStatement_FeeRevenueAndOtherIncome_ThreeMonths = 175

    FinancialStatements_IncomeStatement_FeeRevenueAndOtherIncome_SixMonths = 176

    FinancialStatements_IncomeStatement_FeeRevenueAndOtherIncome_NineMonths = 177

    FinancialStatements_IncomeStatement_FeeRevenueAndOtherIncome_TwelveMonths = 178

    FinancialStatements_IncomeStatement_GeneralAndAdministrativeExpense_OneMonth = 179

    FinancialStatements_IncomeStatement_GeneralAndAdministrativeExpense_TwoMonths = 180

    FinancialStatements_IncomeStatement_GeneralAndAdministrativeExpense_ThreeMonths = 181

    FinancialStatements_IncomeStatement_GeneralAndAdministrativeExpense_SixMonths = 182

    FinancialStatements_IncomeStatement_GeneralAndAdministrativeExpense_NineMonths = 183

    FinancialStatements_IncomeStatement_GeneralAndAdministrativeExpense_TwelveMonths = 184

    FinancialStatements_IncomeStatement_GrossProfit_OneMonth = 185

    FinancialStatements_IncomeStatement_GrossProfit_TwoMonths = 186

    FinancialStatements_IncomeStatement_GrossProfit_ThreeMonths = 187

    FinancialStatements_IncomeStatement_GrossProfit_SixMonths = 188

    FinancialStatements_IncomeStatement_GrossProfit_NineMonths = 189

    FinancialStatements_IncomeStatement_GrossProfit_TwelveMonths = 190

    FinancialStatements_IncomeStatement_InterestExpense_OneMonth = 191

    FinancialStatements_IncomeStatement_InterestExpense_TwoMonths = 192

    FinancialStatements_IncomeStatement_InterestExpense_ThreeMonths = 193

    FinancialStatements_IncomeStatement_InterestExpense_SixMonths = 194

    FinancialStatements_IncomeStatement_InterestExpense_NineMonths = 195

    FinancialStatements_IncomeStatement_InterestExpense_TwelveMonths = 196

    FinancialStatements_IncomeStatement_InterestExpenseNonOperating_OneMonth = 197

    FinancialStatements_IncomeStatement_InterestExpenseNonOperating_TwoMonths = 198

    FinancialStatements_IncomeStatement_InterestExpenseNonOperating_ThreeMonths = 199

    FinancialStatements_IncomeStatement_InterestExpenseNonOperating_SixMonths = 200

    FinancialStatements_IncomeStatement_InterestExpenseNonOperating_NineMonths = 201

    FinancialStatements_IncomeStatement_InterestExpenseNonOperating_TwelveMonths = 202

    FinancialStatements_IncomeStatement_InterestIncomeAfterProvisionForLoanLoss_OneMonth = 203

    FinancialStatements_IncomeStatement_InterestIncomeAfterProvisionForLoanLoss_TwoMonths = 204

    FinancialStatements_IncomeStatement_InterestIncomeAfterProvisionForLoanLoss_ThreeMonths = 205

    FinancialStatements_IncomeStatement_InterestIncomeAfterProvisionForLoanLoss_SixMonths = 206

    FinancialStatements_IncomeStatement_InterestIncomeAfterProvisionForLoanLoss_NineMonths = 207

    FinancialStatements_IncomeStatement_InterestIncomeAfterProvisionForLoanLoss_TwelveMonths = 208

    FinancialStatements_IncomeStatement_InterestIncomeNonOperating_OneMonth = 209

    FinancialStatements_IncomeStatement_InterestIncomeNonOperating_TwoMonths = 210

    FinancialStatements_IncomeStatement_InterestIncomeNonOperating_ThreeMonths = 211

    FinancialStatements_IncomeStatement_InterestIncomeNonOperating_SixMonths = 212

    FinancialStatements_IncomeStatement_InterestIncomeNonOperating_NineMonths = 213

    FinancialStatements_IncomeStatement_InterestIncomeNonOperating_TwelveMonths = 214

    FinancialStatements_IncomeStatement_NetNonOperatingInterestIncomeExpense_OneMonth = 215

    FinancialStatements_IncomeStatement_NetNonOperatingInterestIncomeExpense_TwoMonths = 216

    FinancialStatements_IncomeStatement_NetNonOperatingInterestIncomeExpense_ThreeMonths = 217

    FinancialStatements_IncomeStatement_NetNonOperatingInterestIncomeExpense_SixMonths = 218

    FinancialStatements_IncomeStatement_NetNonOperatingInterestIncomeExpense_NineMonths = 219

    FinancialStatements_IncomeStatement_NetNonOperatingInterestIncomeExpense_TwelveMonths = 220

    FinancialStatements_IncomeStatement_LossAdjustmentExpense_ThreeMonths = 221

    FinancialStatements_IncomeStatement_LossAdjustmentExpense_SixMonths = 222

    FinancialStatements_IncomeStatement_LossAdjustmentExpense_NineMonths = 223

    FinancialStatements_IncomeStatement_LossAdjustmentExpense_TwelveMonths = 224

    FinancialStatements_IncomeStatement_MinorityInterests_OneMonth = 225

    FinancialStatements_IncomeStatement_MinorityInterests_TwoMonths = 226

    FinancialStatements_IncomeStatement_MinorityInterests_ThreeMonths = 227

    FinancialStatements_IncomeStatement_MinorityInterests_SixMonths = 228

    FinancialStatements_IncomeStatement_MinorityInterests_NineMonths = 229

    FinancialStatements_IncomeStatement_MinorityInterests_TwelveMonths = 230

    FinancialStatements_IncomeStatement_NetIncome_OneMonth = 231

    FinancialStatements_IncomeStatement_NetIncome_TwoMonths = 232

    FinancialStatements_IncomeStatement_NetIncome_ThreeMonths = 233

    FinancialStatements_IncomeStatement_NetIncome_SixMonths = 234

    FinancialStatements_IncomeStatement_NetIncome_NineMonths = 235

    FinancialStatements_IncomeStatement_NetIncome_TwelveMonths = 236

    FinancialStatements_IncomeStatement_NetIncomeCommonStockholders_OneMonth = 237

    FinancialStatements_IncomeStatement_NetIncomeCommonStockholders_TwoMonths = 238

    FinancialStatements_IncomeStatement_NetIncomeCommonStockholders_ThreeMonths = 239

    FinancialStatements_IncomeStatement_NetIncomeCommonStockholders_SixMonths = 240

    FinancialStatements_IncomeStatement_NetIncomeCommonStockholders_NineMonths = 241

    FinancialStatements_IncomeStatement_NetIncomeCommonStockholders_TwelveMonths = 242

    FinancialStatements_IncomeStatement_NetIncomeContinuousOperations_OneMonth = 243

    FinancialStatements_IncomeStatement_NetIncomeContinuousOperations_TwoMonths = 244

    FinancialStatements_IncomeStatement_NetIncomeContinuousOperations_ThreeMonths = 245

    FinancialStatements_IncomeStatement_NetIncomeContinuousOperations_SixMonths = 246

    FinancialStatements_IncomeStatement_NetIncomeContinuousOperations_NineMonths = 247

    FinancialStatements_IncomeStatement_NetIncomeContinuousOperations_TwelveMonths = 248

    FinancialStatements_IncomeStatement_NetInterestIncome_OneMonth = 249

    FinancialStatements_IncomeStatement_NetInterestIncome_TwoMonths = 250

    FinancialStatements_IncomeStatement_NetInterestIncome_ThreeMonths = 251

    FinancialStatements_IncomeStatement_NetInterestIncome_SixMonths = 252

    FinancialStatements_IncomeStatement_NetInterestIncome_NineMonths = 253

    FinancialStatements_IncomeStatement_NetInterestIncome_TwelveMonths = 254

    FinancialStatements_IncomeStatement_NetInvestmentIncome_ThreeMonths = 255

    FinancialStatements_IncomeStatement_NetInvestmentIncome_SixMonths = 256

    FinancialStatements_IncomeStatement_NetInvestmentIncome_NineMonths = 257

    FinancialStatements_IncomeStatement_NetInvestmentIncome_TwelveMonths = 258

    FinancialStatements_IncomeStatement_TotalRevenue_OneMonth = 259

    FinancialStatements_IncomeStatement_TotalRevenue_TwoMonths = 260

    FinancialStatements_IncomeStatement_TotalRevenue_ThreeMonths = 261

    FinancialStatements_IncomeStatement_TotalRevenue_SixMonths = 262

    FinancialStatements_IncomeStatement_TotalRevenue_NineMonths = 263

    FinancialStatements_IncomeStatement_TotalRevenue_TwelveMonths = 264

    FinancialStatements_IncomeStatement_NonInterestExpense_OneMonth = 265

    FinancialStatements_IncomeStatement_NonInterestExpense_TwoMonths = 266

    FinancialStatements_IncomeStatement_NonInterestExpense_ThreeMonths = 267

    FinancialStatements_IncomeStatement_NonInterestExpense_SixMonths = 268

    FinancialStatements_IncomeStatement_NonInterestExpense_NineMonths = 269

    FinancialStatements_IncomeStatement_NonInterestExpense_TwelveMonths = 270

    FinancialStatements_IncomeStatement_NonInterestIncome_OneMonth = 271

    FinancialStatements_IncomeStatement_NonInterestIncome_TwoMonths = 272

    FinancialStatements_IncomeStatement_NonInterestIncome_ThreeMonths = 273

    FinancialStatements_IncomeStatement_NonInterestIncome_SixMonths = 274

    FinancialStatements_IncomeStatement_NonInterestIncome_NineMonths = 275

    FinancialStatements_IncomeStatement_NonInterestIncome_TwelveMonths = 276

    FinancialStatements_IncomeStatement_OperatingExpense_OneMonth = 277

    FinancialStatements_IncomeStatement_OperatingExpense_TwoMonths = 278

    FinancialStatements_IncomeStatement_OperatingExpense_ThreeMonths = 279

    FinancialStatements_IncomeStatement_OperatingExpense_SixMonths = 280

    FinancialStatements_IncomeStatement_OperatingExpense_NineMonths = 281

    FinancialStatements_IncomeStatement_OperatingExpense_TwelveMonths = 282

    FinancialStatements_IncomeStatement_OperatingIncome_OneMonth = 283

    FinancialStatements_IncomeStatement_OperatingIncome_TwoMonths = 284

    FinancialStatements_IncomeStatement_OperatingIncome_ThreeMonths = 285

    FinancialStatements_IncomeStatement_OperatingIncome_SixMonths = 286

    FinancialStatements_IncomeStatement_OperatingIncome_NineMonths = 287

    FinancialStatements_IncomeStatement_OperatingIncome_TwelveMonths = 288

    FinancialStatements_IncomeStatement_OperatingRevenue_OneMonth = 289

    FinancialStatements_IncomeStatement_OperatingRevenue_TwoMonths = 290

    FinancialStatements_IncomeStatement_OperatingRevenue_ThreeMonths = 291

    FinancialStatements_IncomeStatement_OperatingRevenue_SixMonths = 292

    FinancialStatements_IncomeStatement_OperatingRevenue_NineMonths = 293

    FinancialStatements_IncomeStatement_OperatingRevenue_TwelveMonths = 294

    FinancialStatements_IncomeStatement_OtherIncomeExpense_OneMonth = 295

    FinancialStatements_IncomeStatement_OtherIncomeExpense_TwoMonths = 296

    FinancialStatements_IncomeStatement_OtherIncomeExpense_ThreeMonths = 297

    FinancialStatements_IncomeStatement_OtherIncomeExpense_SixMonths = 298

    FinancialStatements_IncomeStatement_OtherIncomeExpense_NineMonths = 299

    FinancialStatements_IncomeStatement_OtherIncomeExpense_TwelveMonths = 300

    FinancialStatements_IncomeStatement_PolicyAcquisitionExpense_ThreeMonths = 301

    FinancialStatements_IncomeStatement_PolicyAcquisitionExpense_SixMonths = 302

    FinancialStatements_IncomeStatement_PolicyAcquisitionExpense_NineMonths = 303

    FinancialStatements_IncomeStatement_PolicyAcquisitionExpense_TwelveMonths = 304

    FinancialStatements_IncomeStatement_NetPolicyholderBenefitsAndClaims_ThreeMonths = 305

    FinancialStatements_IncomeStatement_NetPolicyholderBenefitsAndClaims_SixMonths = 306

    FinancialStatements_IncomeStatement_NetPolicyholderBenefitsAndClaims_NineMonths = 307

    FinancialStatements_IncomeStatement_NetPolicyholderBenefitsAndClaims_TwelveMonths = 308

    FinancialStatements_IncomeStatement_PreferredStockDividends_OneMonth = 309

    FinancialStatements_IncomeStatement_PreferredStockDividends_TwoMonths = 310

    FinancialStatements_IncomeStatement_PreferredStockDividends_ThreeMonths = 311

    FinancialStatements_IncomeStatement_PreferredStockDividends_SixMonths = 312

    FinancialStatements_IncomeStatement_PreferredStockDividends_NineMonths = 313

    FinancialStatements_IncomeStatement_PreferredStockDividends_TwelveMonths = 314

    FinancialStatements_IncomeStatement_TotalPremiumsEarned_ThreeMonths = 315

    FinancialStatements_IncomeStatement_TotalPremiumsEarned_SixMonths = 316

    FinancialStatements_IncomeStatement_TotalPremiumsEarned_NineMonths = 317

    FinancialStatements_IncomeStatement_TotalPremiumsEarned_TwelveMonths = 318

    FinancialStatements_IncomeStatement_PretaxIncome_OneMonth = 319

    FinancialStatements_IncomeStatement_PretaxIncome_TwoMonths = 320

    FinancialStatements_IncomeStatement_PretaxIncome_ThreeMonths = 321

    FinancialStatements_IncomeStatement_PretaxIncome_SixMonths = 322

    FinancialStatements_IncomeStatement_PretaxIncome_NineMonths = 323

    FinancialStatements_IncomeStatement_PretaxIncome_TwelveMonths = 324

    FinancialStatements_IncomeStatement_TaxProvision_OneMonth = 325

    FinancialStatements_IncomeStatement_TaxProvision_TwoMonths = 326

    FinancialStatements_IncomeStatement_TaxProvision_ThreeMonths = 327

    FinancialStatements_IncomeStatement_TaxProvision_SixMonths = 328

    FinancialStatements_IncomeStatement_TaxProvision_NineMonths = 329

    FinancialStatements_IncomeStatement_TaxProvision_TwelveMonths = 330

    FinancialStatements_IncomeStatement_CreditLossesProvision_OneMonth = 331

    FinancialStatements_IncomeStatement_CreditLossesProvision_ThreeMonths = 332

    FinancialStatements_IncomeStatement_CreditLossesProvision_SixMonths = 333

    FinancialStatements_IncomeStatement_CreditLossesProvision_NineMonths = 334

    FinancialStatements_IncomeStatement_CreditLossesProvision_TwelveMonths = 335

    FinancialStatements_IncomeStatement_ResearchAndDevelopment_OneMonth = 336

    FinancialStatements_IncomeStatement_ResearchAndDevelopment_TwoMonths = 337

    FinancialStatements_IncomeStatement_ResearchAndDevelopment_ThreeMonths = 338

    FinancialStatements_IncomeStatement_ResearchAndDevelopment_SixMonths = 339

    FinancialStatements_IncomeStatement_ResearchAndDevelopment_NineMonths = 340

    FinancialStatements_IncomeStatement_ResearchAndDevelopment_TwelveMonths = 341

    FinancialStatements_IncomeStatement_SellingAndMarketingExpense_OneMonth = 342

    FinancialStatements_IncomeStatement_SellingAndMarketingExpense_TwoMonths = 343

    FinancialStatements_IncomeStatement_SellingAndMarketingExpense_ThreeMonths = 344

    FinancialStatements_IncomeStatement_SellingAndMarketingExpense_SixMonths = 345

    FinancialStatements_IncomeStatement_SellingAndMarketingExpense_NineMonths = 346

    FinancialStatements_IncomeStatement_SellingAndMarketingExpense_TwelveMonths = 347

    FinancialStatements_IncomeStatement_SellingGeneralAndAdministration_OneMonth = 348

    FinancialStatements_IncomeStatement_SellingGeneralAndAdministration_TwoMonths = 349

    FinancialStatements_IncomeStatement_SellingGeneralAndAdministration_ThreeMonths = 350

    FinancialStatements_IncomeStatement_SellingGeneralAndAdministration_SixMonths = 351

    FinancialStatements_IncomeStatement_SellingGeneralAndAdministration_NineMonths = 352

    FinancialStatements_IncomeStatement_SellingGeneralAndAdministration_TwelveMonths = 353

    FinancialStatements_IncomeStatement_SpecialIncomeCharges_OneMonth = 354

    FinancialStatements_IncomeStatement_SpecialIncomeCharges_TwoMonths = 355

    FinancialStatements_IncomeStatement_SpecialIncomeCharges_ThreeMonths = 356

    FinancialStatements_IncomeStatement_SpecialIncomeCharges_SixMonths = 357

    FinancialStatements_IncomeStatement_SpecialIncomeCharges_NineMonths = 358

    FinancialStatements_IncomeStatement_SpecialIncomeCharges_TwelveMonths = 359

    FinancialStatements_IncomeStatement_TotalExpenses_OneMonth = 360

    FinancialStatements_IncomeStatement_TotalExpenses_TwoMonths = 361

    FinancialStatements_IncomeStatement_TotalExpenses_ThreeMonths = 362

    FinancialStatements_IncomeStatement_TotalExpenses_SixMonths = 363

    FinancialStatements_IncomeStatement_TotalExpenses_NineMonths = 364

    FinancialStatements_IncomeStatement_TotalExpenses_TwelveMonths = 365

    FinancialStatements_IncomeStatement_InterestIncome_OneMonth = 366

    FinancialStatements_IncomeStatement_InterestIncome_TwoMonths = 367

    FinancialStatements_IncomeStatement_InterestIncome_ThreeMonths = 368

    FinancialStatements_IncomeStatement_InterestIncome_SixMonths = 369

    FinancialStatements_IncomeStatement_InterestIncome_NineMonths = 370

    FinancialStatements_IncomeStatement_InterestIncome_TwelveMonths = 371

    FinancialStatements_IncomeStatement_EBIT_OneMonth = 372

    FinancialStatements_IncomeStatement_EBIT_TwoMonths = 373

    FinancialStatements_IncomeStatement_EBIT_ThreeMonths = 374

    FinancialStatements_IncomeStatement_EBIT_SixMonths = 375

    FinancialStatements_IncomeStatement_EBIT_NineMonths = 376

    FinancialStatements_IncomeStatement_EBIT_TwelveMonths = 377

    FinancialStatements_IncomeStatement_EBITDA_OneMonth = 378

    FinancialStatements_IncomeStatement_EBITDA_TwoMonths = 379

    FinancialStatements_IncomeStatement_EBITDA_ThreeMonths = 380

    FinancialStatements_IncomeStatement_EBITDA_SixMonths = 381

    FinancialStatements_IncomeStatement_EBITDA_NineMonths = 382

    FinancialStatements_IncomeStatement_EBITDA_TwelveMonths = 383

    FinancialStatements_IncomeStatement_NetIncomeContinuousOperationsNetMinorityInterest_ThreeMonths = 384

    FinancialStatements_IncomeStatement_NetIncomeContinuousOperationsNetMinorityInterest_SixMonths = 385

    FinancialStatements_IncomeStatement_NetIncomeContinuousOperationsNetMinorityInterest_NineMonths = 386

    FinancialStatements_IncomeStatement_NetIncomeContinuousOperationsNetMinorityInterest_TwelveMonths = 387

    FinancialStatements_IncomeStatement_CededPremiums_ThreeMonths = 388

    FinancialStatements_IncomeStatement_CededPremiums_SixMonths = 389

    FinancialStatements_IncomeStatement_CededPremiums_NineMonths = 390

    FinancialStatements_IncomeStatement_CededPremiums_TwelveMonths = 391

    FinancialStatements_IncomeStatement_CommissionExpenses_OneMonth = 392

    FinancialStatements_IncomeStatement_CommissionExpenses_TwoMonths = 393

    FinancialStatements_IncomeStatement_CommissionExpenses_ThreeMonths = 394

    FinancialStatements_IncomeStatement_CommissionExpenses_SixMonths = 395

    FinancialStatements_IncomeStatement_CommissionExpenses_NineMonths = 396

    FinancialStatements_IncomeStatement_CommissionExpenses_TwelveMonths = 397

    FinancialStatements_IncomeStatement_CreditCard_ThreeMonths = 398

    FinancialStatements_IncomeStatement_CreditCard_SixMonths = 399

    FinancialStatements_IncomeStatement_CreditCard_NineMonths = 400

    FinancialStatements_IncomeStatement_CreditCard_TwelveMonths = 401

    FinancialStatements_IncomeStatement_DividendIncome_OneMonth = 402

    FinancialStatements_IncomeStatement_DividendIncome_TwoMonths = 403

    FinancialStatements_IncomeStatement_DividendIncome_ThreeMonths = 404

    FinancialStatements_IncomeStatement_DividendIncome_SixMonths = 405

    FinancialStatements_IncomeStatement_DividendIncome_NineMonths = 406

    FinancialStatements_IncomeStatement_DividendIncome_TwelveMonths = 407

    FinancialStatements_IncomeStatement_EarningsFromEquityInterest_OneMonth = 408

    FinancialStatements_IncomeStatement_EarningsFromEquityInterest_TwoMonths = 409

    FinancialStatements_IncomeStatement_EarningsFromEquityInterest_ThreeMonths = 410

    FinancialStatements_IncomeStatement_EarningsFromEquityInterest_SixMonths = 411

    FinancialStatements_IncomeStatement_EarningsFromEquityInterest_NineMonths = 412

    FinancialStatements_IncomeStatement_EarningsFromEquityInterest_TwelveMonths = 413

    FinancialStatements_IncomeStatement_Equipment_ThreeMonths = 414

    FinancialStatements_IncomeStatement_Equipment_SixMonths = 415

    FinancialStatements_IncomeStatement_Equipment_NineMonths = 416

    FinancialStatements_IncomeStatement_Equipment_TwelveMonths = 417

    FinancialStatements_IncomeStatement_ExplorationDevelopmentAndMineralPropertyLeaseExpenses_ThreeMonths = 418

    FinancialStatements_IncomeStatement_ExplorationDevelopmentAndMineralPropertyLeaseExpenses_SixMonths = 419

    FinancialStatements_IncomeStatement_ExplorationDevelopmentAndMineralPropertyLeaseExpenses_NineMonths = 420

    FinancialStatements_IncomeStatement_ExplorationDevelopmentAndMineralPropertyLeaseExpenses_TwelveMonths = 421

    FinancialStatements_IncomeStatement_FeesAndCommissions_OneMonth = 422

    FinancialStatements_IncomeStatement_FeesAndCommissions_ThreeMonths = 423

    FinancialStatements_IncomeStatement_FeesAndCommissions_SixMonths = 424

    FinancialStatements_IncomeStatement_FeesAndCommissions_NineMonths = 425

    FinancialStatements_IncomeStatement_FeesAndCommissions_TwelveMonths = 426

    FinancialStatements_IncomeStatement_ForeignExchangeTradingGains_ThreeMonths = 427

    FinancialStatements_IncomeStatement_ForeignExchangeTradingGains_SixMonths = 428

    FinancialStatements_IncomeStatement_ForeignExchangeTradingGains_NineMonths = 429

    FinancialStatements_IncomeStatement_ForeignExchangeTradingGains_TwelveMonths = 430

    FinancialStatements_IncomeStatement_Fuel_OneMonth = 431

    FinancialStatements_IncomeStatement_Fuel_TwoMonths = 432

    FinancialStatements_IncomeStatement_Fuel_ThreeMonths = 433

    FinancialStatements_IncomeStatement_Fuel_SixMonths = 434

    FinancialStatements_IncomeStatement_Fuel_NineMonths = 435

    FinancialStatements_IncomeStatement_Fuel_TwelveMonths = 436

    FinancialStatements_IncomeStatement_FuelAndPurchasePower_ThreeMonths = 437

    FinancialStatements_IncomeStatement_FuelAndPurchasePower_SixMonths = 438

    FinancialStatements_IncomeStatement_FuelAndPurchasePower_NineMonths = 439

    FinancialStatements_IncomeStatement_FuelAndPurchasePower_TwelveMonths = 440

    FinancialStatements_IncomeStatement_GainOnSaleOfBusiness_OneMonth = 441

    FinancialStatements_IncomeStatement_GainOnSaleOfBusiness_TwoMonths = 442

    FinancialStatements_IncomeStatement_GainOnSaleOfBusiness_ThreeMonths = 443

    FinancialStatements_IncomeStatement_GainOnSaleOfBusiness_SixMonths = 444

    FinancialStatements_IncomeStatement_GainOnSaleOfBusiness_NineMonths = 445

    FinancialStatements_IncomeStatement_GainOnSaleOfBusiness_TwelveMonths = 446

    FinancialStatements_IncomeStatement_GainOnSaleOfPPE_OneMonth = 447

    FinancialStatements_IncomeStatement_GainOnSaleOfPPE_ThreeMonths = 448

    FinancialStatements_IncomeStatement_GainOnSaleOfPPE_SixMonths = 449

    FinancialStatements_IncomeStatement_GainOnSaleOfPPE_NineMonths = 450

    FinancialStatements_IncomeStatement_GainOnSaleOfPPE_TwelveMonths = 451

    FinancialStatements_IncomeStatement_GainOnSaleOfSecurity_OneMonth = 452

    FinancialStatements_IncomeStatement_GainOnSaleOfSecurity_TwoMonths = 453

    FinancialStatements_IncomeStatement_GainOnSaleOfSecurity_ThreeMonths = 454

    FinancialStatements_IncomeStatement_GainOnSaleOfSecurity_SixMonths = 455

    FinancialStatements_IncomeStatement_GainOnSaleOfSecurity_NineMonths = 456

    FinancialStatements_IncomeStatement_GainOnSaleOfSecurity_TwelveMonths = 457

    FinancialStatements_IncomeStatement_GrossPremiumsWritten_ThreeMonths = 458

    FinancialStatements_IncomeStatement_GrossPremiumsWritten_SixMonths = 459

    FinancialStatements_IncomeStatement_GrossPremiumsWritten_NineMonths = 460

    FinancialStatements_IncomeStatement_GrossPremiumsWritten_TwelveMonths = 461

    FinancialStatements_IncomeStatement_ImpairmentOfCapitalAssets_OneMonth = 462

    FinancialStatements_IncomeStatement_ImpairmentOfCapitalAssets_TwoMonths = 463

    FinancialStatements_IncomeStatement_ImpairmentOfCapitalAssets_ThreeMonths = 464

    FinancialStatements_IncomeStatement_ImpairmentOfCapitalAssets_SixMonths = 465

    FinancialStatements_IncomeStatement_ImpairmentOfCapitalAssets_NineMonths = 466

    FinancialStatements_IncomeStatement_ImpairmentOfCapitalAssets_TwelveMonths = 467

    FinancialStatements_IncomeStatement_IncreaseDecreaseInNetUnearnedPremiumReserves_ThreeMonths = 468

    FinancialStatements_IncomeStatement_IncreaseDecreaseInNetUnearnedPremiumReserves_SixMonths = 469

    FinancialStatements_IncomeStatement_IncreaseDecreaseInNetUnearnedPremiumReserves_NineMonths = 470

    FinancialStatements_IncomeStatement_IncreaseDecreaseInNetUnearnedPremiumReserves_TwelveMonths = 471

    FinancialStatements_IncomeStatement_InsuranceAndClaims_ThreeMonths = 472

    FinancialStatements_IncomeStatement_InsuranceAndClaims_SixMonths = 473

    FinancialStatements_IncomeStatement_InsuranceAndClaims_NineMonths = 474

    FinancialStatements_IncomeStatement_InsuranceAndClaims_TwelveMonths = 475

    FinancialStatements_IncomeStatement_InterestExpenseForDeposit_OneMonth = 476

    FinancialStatements_IncomeStatement_InterestExpenseForDeposit_ThreeMonths = 477

    FinancialStatements_IncomeStatement_InterestExpenseForDeposit_SixMonths = 478

    FinancialStatements_IncomeStatement_InterestExpenseForDeposit_NineMonths = 479

    FinancialStatements_IncomeStatement_InterestExpenseForDeposit_TwelveMonths = 480

    FinancialStatements_IncomeStatement_InterestExpenseForFederalFundsSoldAndSecuritiesPurchaseUnderAgreementsToResell_ThreeMonths = 481

    FinancialStatements_IncomeStatement_InterestExpenseForFederalFundsSoldAndSecuritiesPurchaseUnderAgreementsToResell_SixMonths = 482

    FinancialStatements_IncomeStatement_InterestExpenseForFederalFundsSoldAndSecuritiesPurchaseUnderAgreementsToResell_NineMonths = 483

    FinancialStatements_IncomeStatement_InterestExpenseForFederalFundsSoldAndSecuritiesPurchaseUnderAgreementsToResell_TwelveMonths = 484

    FinancialStatements_IncomeStatement_InterestExpenseForLongTermDebtAndCapitalSecurities_OneMonth = 485

    FinancialStatements_IncomeStatement_InterestExpenseForLongTermDebtAndCapitalSecurities_ThreeMonths = 486

    FinancialStatements_IncomeStatement_InterestExpenseForLongTermDebtAndCapitalSecurities_SixMonths = 487

    FinancialStatements_IncomeStatement_InterestExpenseForLongTermDebtAndCapitalSecurities_NineMonths = 488

    FinancialStatements_IncomeStatement_InterestExpenseForLongTermDebtAndCapitalSecurities_TwelveMonths = 489

    FinancialStatements_IncomeStatement_InterestExpenseForShortTermDebt_ThreeMonths = 490

    FinancialStatements_IncomeStatement_InterestExpenseForShortTermDebt_SixMonths = 491

    FinancialStatements_IncomeStatement_InterestExpenseForShortTermDebt_NineMonths = 492

    FinancialStatements_IncomeStatement_InterestExpenseForShortTermDebt_TwelveMonths = 493

    FinancialStatements_IncomeStatement_InterestIncomeFromDeposits_OneMonth = 494

    FinancialStatements_IncomeStatement_InterestIncomeFromDeposits_ThreeMonths = 495

    FinancialStatements_IncomeStatement_InterestIncomeFromDeposits_SixMonths = 496

    FinancialStatements_IncomeStatement_InterestIncomeFromDeposits_NineMonths = 497

    FinancialStatements_IncomeStatement_InterestIncomeFromDeposits_TwelveMonths = 498

    FinancialStatements_IncomeStatement_InterestIncomeFromFederalFundsSoldAndSecuritiesPurchaseUnderAgreementsToResell_ThreeMonths = 499

    FinancialStatements_IncomeStatement_InterestIncomeFromFederalFundsSoldAndSecuritiesPurchaseUnderAgreementsToResell_SixMonths = 500

    FinancialStatements_IncomeStatement_InterestIncomeFromFederalFundsSoldAndSecuritiesPurchaseUnderAgreementsToResell_NineMonths = 501

    FinancialStatements_IncomeStatement_InterestIncomeFromFederalFundsSoldAndSecuritiesPurchaseUnderAgreementsToResell_TwelveMonths = 502

    FinancialStatements_IncomeStatement_InterestIncomeFromLeases_OneMonth = 503

    FinancialStatements_IncomeStatement_InterestIncomeFromLeases_ThreeMonths = 504

    FinancialStatements_IncomeStatement_InterestIncomeFromLeases_SixMonths = 505

    FinancialStatements_IncomeStatement_InterestIncomeFromLeases_NineMonths = 506

    FinancialStatements_IncomeStatement_InterestIncomeFromLeases_TwelveMonths = 507

    FinancialStatements_IncomeStatement_InterestIncomeFromLoans_OneMonth = 508

    FinancialStatements_IncomeStatement_InterestIncomeFromLoans_ThreeMonths = 509

    FinancialStatements_IncomeStatement_InterestIncomeFromLoans_SixMonths = 510

    FinancialStatements_IncomeStatement_InterestIncomeFromLoans_NineMonths = 511

    FinancialStatements_IncomeStatement_InterestIncomeFromLoans_TwelveMonths = 512

    FinancialStatements_IncomeStatement_InterestIncomeFromLoansAndLease_OneMonth = 513

    FinancialStatements_IncomeStatement_InterestIncomeFromLoansAndLease_ThreeMonths = 514

    FinancialStatements_IncomeStatement_InterestIncomeFromLoansAndLease_SixMonths = 515

    FinancialStatements_IncomeStatement_InterestIncomeFromLoansAndLease_NineMonths = 516

    FinancialStatements_IncomeStatement_InterestIncomeFromLoansAndLease_TwelveMonths = 517

    FinancialStatements_IncomeStatement_InterestIncomeFromSecurities_OneMonth = 518

    FinancialStatements_IncomeStatement_InterestIncomeFromSecurities_TwoMonths = 519

    FinancialStatements_IncomeStatement_InterestIncomeFromSecurities_ThreeMonths = 520

    FinancialStatements_IncomeStatement_InterestIncomeFromSecurities_SixMonths = 521

    FinancialStatements_IncomeStatement_InterestIncomeFromSecurities_NineMonths = 522

    FinancialStatements_IncomeStatement_InterestIncomeFromSecurities_TwelveMonths = 523

    FinancialStatements_IncomeStatement_InvestmentBankingProfit_ThreeMonths = 524

    FinancialStatements_IncomeStatement_InvestmentBankingProfit_SixMonths = 525

    FinancialStatements_IncomeStatement_InvestmentBankingProfit_NineMonths = 526

    FinancialStatements_IncomeStatement_InvestmentBankingProfit_TwelveMonths = 527

    FinancialStatements_IncomeStatement_MaintenanceAndRepairs_OneMonth = 528

    FinancialStatements_IncomeStatement_MaintenanceAndRepairs_TwoMonths = 529

    FinancialStatements_IncomeStatement_MaintenanceAndRepairs_ThreeMonths = 530

    FinancialStatements_IncomeStatement_MaintenanceAndRepairs_SixMonths = 531

    FinancialStatements_IncomeStatement_MaintenanceAndRepairs_NineMonths = 532

    FinancialStatements_IncomeStatement_MaintenanceAndRepairs_TwelveMonths = 533

    FinancialStatements_IncomeStatement_NetForeignExchangeGainLoss_ThreeMonths = 534

    FinancialStatements_IncomeStatement_NetForeignExchangeGainLoss_SixMonths = 535

    FinancialStatements_IncomeStatement_NetForeignExchangeGainLoss_NineMonths = 536

    FinancialStatements_IncomeStatement_NetForeignExchangeGainLoss_TwelveMonths = 537

    FinancialStatements_IncomeStatement_NetOccupancyExpense_ThreeMonths = 538

    FinancialStatements_IncomeStatement_NetOccupancyExpense_SixMonths = 539

    FinancialStatements_IncomeStatement_NetOccupancyExpense_NineMonths = 540

    FinancialStatements_IncomeStatement_NetOccupancyExpense_TwelveMonths = 541

    FinancialStatements_IncomeStatement_NetPremiumsWritten_ThreeMonths = 542

    FinancialStatements_IncomeStatement_NetPremiumsWritten_SixMonths = 543

    FinancialStatements_IncomeStatement_NetPremiumsWritten_NineMonths = 544

    FinancialStatements_IncomeStatement_NetPremiumsWritten_TwelveMonths = 545

    FinancialStatements_IncomeStatement_NetRealizedGainLossOnInvestments_ThreeMonths = 546

    FinancialStatements_IncomeStatement_NetRealizedGainLossOnInvestments_SixMonths = 547

    FinancialStatements_IncomeStatement_NetRealizedGainLossOnInvestments_NineMonths = 548

    FinancialStatements_IncomeStatement_NetRealizedGainLossOnInvestments_TwelveMonths = 549

    FinancialStatements_IncomeStatement_OccupancyAndEquipment_ThreeMonths = 550

    FinancialStatements_IncomeStatement_OccupancyAndEquipment_SixMonths = 551

    FinancialStatements_IncomeStatement_OccupancyAndEquipment_NineMonths = 552

    FinancialStatements_IncomeStatement_OccupancyAndEquipment_TwelveMonths = 553

    FinancialStatements_IncomeStatement_OperationAndMaintenance_OneMonth = 554

    FinancialStatements_IncomeStatement_OperationAndMaintenance_TwoMonths = 555

    FinancialStatements_IncomeStatement_OperationAndMaintenance_ThreeMonths = 556

    FinancialStatements_IncomeStatement_OperationAndMaintenance_SixMonths = 557

    FinancialStatements_IncomeStatement_OperationAndMaintenance_NineMonths = 558

    FinancialStatements_IncomeStatement_OperationAndMaintenance_TwelveMonths = 559

    FinancialStatements_IncomeStatement_OtherCustomerServices_OneMonth = 560

    FinancialStatements_IncomeStatement_OtherCustomerServices_ThreeMonths = 561

    FinancialStatements_IncomeStatement_OtherCustomerServices_SixMonths = 562

    FinancialStatements_IncomeStatement_OtherCustomerServices_NineMonths = 563

    FinancialStatements_IncomeStatement_OtherCustomerServices_TwelveMonths = 564

    FinancialStatements_IncomeStatement_OtherInterestExpense_OneMonth = 565

    FinancialStatements_IncomeStatement_OtherInterestExpense_ThreeMonths = 566

    FinancialStatements_IncomeStatement_OtherInterestExpense_SixMonths = 567

    FinancialStatements_IncomeStatement_OtherInterestExpense_NineMonths = 568

    FinancialStatements_IncomeStatement_OtherInterestExpense_TwelveMonths = 569

    FinancialStatements_IncomeStatement_OtherInterestIncome_OneMonth = 570

    FinancialStatements_IncomeStatement_OtherInterestIncome_ThreeMonths = 571

    FinancialStatements_IncomeStatement_OtherInterestIncome_SixMonths = 572

    FinancialStatements_IncomeStatement_OtherInterestIncome_NineMonths = 573

    FinancialStatements_IncomeStatement_OtherInterestIncome_TwelveMonths = 574

    FinancialStatements_IncomeStatement_OtherNonInterestExpense_OneMonth = 575

    FinancialStatements_IncomeStatement_OtherNonInterestExpense_TwoMonths = 576

    FinancialStatements_IncomeStatement_OtherNonInterestExpense_ThreeMonths = 577

    FinancialStatements_IncomeStatement_OtherNonInterestExpense_SixMonths = 578

    FinancialStatements_IncomeStatement_OtherNonInterestExpense_NineMonths = 579

    FinancialStatements_IncomeStatement_OtherNonInterestExpense_TwelveMonths = 580

    FinancialStatements_IncomeStatement_OtherSpecialCharges_TwoMonths = 581

    FinancialStatements_IncomeStatement_OtherSpecialCharges_ThreeMonths = 582

    FinancialStatements_IncomeStatement_OtherSpecialCharges_SixMonths = 583

    FinancialStatements_IncomeStatement_OtherSpecialCharges_NineMonths = 584

    FinancialStatements_IncomeStatement_OtherSpecialCharges_TwelveMonths = 585

    FinancialStatements_IncomeStatement_OtherTaxes_OneMonth = 586

    FinancialStatements_IncomeStatement_OtherTaxes_TwoMonths = 587

    FinancialStatements_IncomeStatement_OtherTaxes_ThreeMonths = 588

    FinancialStatements_IncomeStatement_OtherTaxes_SixMonths = 589

    FinancialStatements_IncomeStatement_OtherTaxes_NineMonths = 590

    FinancialStatements_IncomeStatement_OtherTaxes_TwelveMonths = 591

    FinancialStatements_IncomeStatement_PolicyholderBenefitsCeded_TwelveMonths = 592

    FinancialStatements_IncomeStatement_PolicyholderBenefitsGross_ThreeMonths = 593

    FinancialStatements_IncomeStatement_PolicyholderBenefitsGross_SixMonths = 594

    FinancialStatements_IncomeStatement_PolicyholderBenefitsGross_NineMonths = 595

    FinancialStatements_IncomeStatement_PolicyholderBenefitsGross_TwelveMonths = 596

    FinancialStatements_IncomeStatement_PolicyholderDividends_ThreeMonths = 597

    FinancialStatements_IncomeStatement_PolicyholderDividends_SixMonths = 598

    FinancialStatements_IncomeStatement_PolicyholderDividends_NineMonths = 599

    FinancialStatements_IncomeStatement_PolicyholderDividends_TwelveMonths = 600

    FinancialStatements_IncomeStatement_PolicyholderInterest_ThreeMonths = 601

    FinancialStatements_IncomeStatement_PolicyholderInterest_SixMonths = 602

    FinancialStatements_IncomeStatement_PolicyholderInterest_NineMonths = 603

    FinancialStatements_IncomeStatement_PolicyholderInterest_TwelveMonths = 604

    FinancialStatements_IncomeStatement_ProfessionalExpenseAndContractServicesExpense_OneMonth = 605

    FinancialStatements_IncomeStatement_ProfessionalExpenseAndContractServicesExpense_TwoMonths = 606

    FinancialStatements_IncomeStatement_ProfessionalExpenseAndContractServicesExpense_ThreeMonths = 607

    FinancialStatements_IncomeStatement_ProfessionalExpenseAndContractServicesExpense_SixMonths = 608

    FinancialStatements_IncomeStatement_ProfessionalExpenseAndContractServicesExpense_NineMonths = 609

    FinancialStatements_IncomeStatement_ProfessionalExpenseAndContractServicesExpense_TwelveMonths = 610

    FinancialStatements_IncomeStatement_ProvisionForDoubtfulAccounts_TwoMonths = 611

    FinancialStatements_IncomeStatement_ProvisionForDoubtfulAccounts_ThreeMonths = 612

    FinancialStatements_IncomeStatement_ProvisionForDoubtfulAccounts_SixMonths = 613

    FinancialStatements_IncomeStatement_ProvisionForDoubtfulAccounts_NineMonths = 614

    FinancialStatements_IncomeStatement_ProvisionForDoubtfulAccounts_TwelveMonths = 615

    FinancialStatements_IncomeStatement_RentAndLandingFees_OneMonth = 616

    FinancialStatements_IncomeStatement_RentAndLandingFees_TwoMonths = 617

    FinancialStatements_IncomeStatement_RentAndLandingFees_ThreeMonths = 618

    FinancialStatements_IncomeStatement_RentAndLandingFees_SixMonths = 619

    FinancialStatements_IncomeStatement_RentAndLandingFees_NineMonths = 620

    FinancialStatements_IncomeStatement_RentAndLandingFees_TwelveMonths = 621

    FinancialStatements_IncomeStatement_RestructuringAndMergernAcquisition_OneMonth = 622

    FinancialStatements_IncomeStatement_RestructuringAndMergernAcquisition_TwoMonths = 623

    FinancialStatements_IncomeStatement_RestructuringAndMergernAcquisition_ThreeMonths = 624

    FinancialStatements_IncomeStatement_RestructuringAndMergernAcquisition_SixMonths = 625

    FinancialStatements_IncomeStatement_RestructuringAndMergernAcquisition_NineMonths = 626

    FinancialStatements_IncomeStatement_RestructuringAndMergernAcquisition_TwelveMonths = 627

    FinancialStatements_IncomeStatement_SalariesAndWages_OneMonth = 628

    FinancialStatements_IncomeStatement_SalariesAndWages_TwoMonths = 629

    FinancialStatements_IncomeStatement_SalariesAndWages_ThreeMonths = 630

    FinancialStatements_IncomeStatement_SalariesAndWages_SixMonths = 631

    FinancialStatements_IncomeStatement_SalariesAndWages_NineMonths = 632

    FinancialStatements_IncomeStatement_SalariesAndWages_TwelveMonths = 633

    FinancialStatements_IncomeStatement_SecuritiesActivities_ThreeMonths = 634

    FinancialStatements_IncomeStatement_SecuritiesActivities_SixMonths = 635

    FinancialStatements_IncomeStatement_SecuritiesActivities_NineMonths = 636

    FinancialStatements_IncomeStatement_SecuritiesActivities_TwelveMonths = 637

    FinancialStatements_IncomeStatement_ServiceChargeOnDepositorAccounts_OneMonth = 638

    FinancialStatements_IncomeStatement_ServiceChargeOnDepositorAccounts_ThreeMonths = 639

    FinancialStatements_IncomeStatement_ServiceChargeOnDepositorAccounts_SixMonths = 640

    FinancialStatements_IncomeStatement_ServiceChargeOnDepositorAccounts_NineMonths = 641

    FinancialStatements_IncomeStatement_ServiceChargeOnDepositorAccounts_TwelveMonths = 642

    FinancialStatements_IncomeStatement_TradingGainLoss_OneMonth = 643

    FinancialStatements_IncomeStatement_TradingGainLoss_ThreeMonths = 644

    FinancialStatements_IncomeStatement_TradingGainLoss_SixMonths = 645

    FinancialStatements_IncomeStatement_TradingGainLoss_NineMonths = 646

    FinancialStatements_IncomeStatement_TradingGainLoss_TwelveMonths = 647

    FinancialStatements_IncomeStatement_TrustFeesbyCommissions_ThreeMonths = 648

    FinancialStatements_IncomeStatement_TrustFeesbyCommissions_SixMonths = 649

    FinancialStatements_IncomeStatement_TrustFeesbyCommissions_NineMonths = 650

    FinancialStatements_IncomeStatement_TrustFeesbyCommissions_TwelveMonths = 651

    FinancialStatements_IncomeStatement_UnderwritingExpenses_ThreeMonths = 652

    FinancialStatements_IncomeStatement_UnderwritingExpenses_SixMonths = 653

    FinancialStatements_IncomeStatement_UnderwritingExpenses_NineMonths = 654

    FinancialStatements_IncomeStatement_UnderwritingExpenses_TwelveMonths = 655

    FinancialStatements_IncomeStatement_WriteOff_ThreeMonths = 656

    FinancialStatements_IncomeStatement_WriteOff_SixMonths = 657

    FinancialStatements_IncomeStatement_WriteOff_NineMonths = 658

    FinancialStatements_IncomeStatement_WriteOff_TwelveMonths = 659

    FinancialStatements_IncomeStatement_OtherNonInterestIncome_OneMonth = 660

    FinancialStatements_IncomeStatement_OtherNonInterestIncome_ThreeMonths = 661

    FinancialStatements_IncomeStatement_OtherNonInterestIncome_SixMonths = 662

    FinancialStatements_IncomeStatement_OtherNonInterestIncome_NineMonths = 663

    FinancialStatements_IncomeStatement_OtherNonInterestIncome_TwelveMonths = 664

    FinancialStatements_IncomeStatement_AmortizationOfIntangibles_OneMonth = 665

    FinancialStatements_IncomeStatement_AmortizationOfIntangibles_TwoMonths = 666

    FinancialStatements_IncomeStatement_AmortizationOfIntangibles_ThreeMonths = 667

    FinancialStatements_IncomeStatement_AmortizationOfIntangibles_SixMonths = 668

    FinancialStatements_IncomeStatement_AmortizationOfIntangibles_NineMonths = 669

    FinancialStatements_IncomeStatement_AmortizationOfIntangibles_TwelveMonths = 670

    FinancialStatements_IncomeStatement_NetIncomeFromContinuingAndDiscontinuedOperation_OneMonth = 671

    FinancialStatements_IncomeStatement_NetIncomeFromContinuingAndDiscontinuedOperation_TwoMonths = 672

    FinancialStatements_IncomeStatement_NetIncomeFromContinuingAndDiscontinuedOperation_ThreeMonths = 673

    FinancialStatements_IncomeStatement_NetIncomeFromContinuingAndDiscontinuedOperation_SixMonths = 674

    FinancialStatements_IncomeStatement_NetIncomeFromContinuingAndDiscontinuedOperation_NineMonths = 675

    FinancialStatements_IncomeStatement_NetIncomeFromContinuingAndDiscontinuedOperation_TwelveMonths = 676

    FinancialStatements_IncomeStatement_NetIncomeFromTaxLossCarryforward_ThreeMonths = 677

    FinancialStatements_IncomeStatement_NetIncomeFromTaxLossCarryforward_SixMonths = 678

    FinancialStatements_IncomeStatement_NetIncomeFromTaxLossCarryforward_NineMonths = 679

    FinancialStatements_IncomeStatement_NetIncomeFromTaxLossCarryforward_TwelveMonths = 680

    FinancialStatements_IncomeStatement_OtherOperatingExpenses_OneMonth = 681

    FinancialStatements_IncomeStatement_OtherOperatingExpenses_TwoMonths = 682

    FinancialStatements_IncomeStatement_OtherOperatingExpenses_ThreeMonths = 683

    FinancialStatements_IncomeStatement_OtherOperatingExpenses_SixMonths = 684

    FinancialStatements_IncomeStatement_OtherOperatingExpenses_NineMonths = 685

    FinancialStatements_IncomeStatement_OtherOperatingExpenses_TwelveMonths = 686

    FinancialStatements_IncomeStatement_TotalMoneyMarketInvestments_OneMonth = 687

    FinancialStatements_IncomeStatement_TotalMoneyMarketInvestments_ThreeMonths = 688

    FinancialStatements_IncomeStatement_TotalMoneyMarketInvestments_SixMonths = 689

    FinancialStatements_IncomeStatement_TotalMoneyMarketInvestments_NineMonths = 690

    FinancialStatements_IncomeStatement_TotalMoneyMarketInvestments_TwelveMonths = 691

    FinancialStatements_IncomeStatement_ReconciledCostOfRevenue_OneMonth = 692

    FinancialStatements_IncomeStatement_ReconciledCostOfRevenue_TwoMonths = 693

    FinancialStatements_IncomeStatement_ReconciledCostOfRevenue_ThreeMonths = 694

    FinancialStatements_IncomeStatement_ReconciledCostOfRevenue_SixMonths = 695

    FinancialStatements_IncomeStatement_ReconciledCostOfRevenue_NineMonths = 696

    FinancialStatements_IncomeStatement_ReconciledCostOfRevenue_TwelveMonths = 697

    FinancialStatements_IncomeStatement_ReconciledDepreciation_OneMonth = 698

    FinancialStatements_IncomeStatement_ReconciledDepreciation_TwoMonths = 699

    FinancialStatements_IncomeStatement_ReconciledDepreciation_ThreeMonths = 700

    FinancialStatements_IncomeStatement_ReconciledDepreciation_SixMonths = 701

    FinancialStatements_IncomeStatement_ReconciledDepreciation_NineMonths = 702

    FinancialStatements_IncomeStatement_ReconciledDepreciation_TwelveMonths = 703

    FinancialStatements_IncomeStatement_NormalizedIncome_OneMonth = 704

    FinancialStatements_IncomeStatement_NormalizedIncome_TwoMonths = 705

    FinancialStatements_IncomeStatement_NormalizedIncome_ThreeMonths = 706

    FinancialStatements_IncomeStatement_NormalizedIncome_SixMonths = 707

    FinancialStatements_IncomeStatement_NormalizedIncome_NineMonths = 708

    FinancialStatements_IncomeStatement_NormalizedIncome_TwelveMonths = 709

    FinancialStatements_IncomeStatement_NetIncomeFromContinuingOperationNetMinorityInterest_OneMonth = 710

    FinancialStatements_IncomeStatement_NetIncomeFromContinuingOperationNetMinorityInterest_TwoMonths = 711

    FinancialStatements_IncomeStatement_NetIncomeFromContinuingOperationNetMinorityInterest_ThreeMonths = 712

    FinancialStatements_IncomeStatement_NetIncomeFromContinuingOperationNetMinorityInterest_SixMonths = 713

    FinancialStatements_IncomeStatement_NetIncomeFromContinuingOperationNetMinorityInterest_NineMonths = 714

    FinancialStatements_IncomeStatement_NetIncomeFromContinuingOperationNetMinorityInterest_TwelveMonths = 715

    FinancialStatements_IncomeStatement_GainLossonSaleofAssets_OneMonth = 716

    FinancialStatements_IncomeStatement_GainLossonSaleofAssets_ThreeMonths = 717

    FinancialStatements_IncomeStatement_GainLossonSaleofAssets_SixMonths = 718

    FinancialStatements_IncomeStatement_GainLossonSaleofAssets_NineMonths = 719

    FinancialStatements_IncomeStatement_GainLossonSaleofAssets_TwelveMonths = 720

    FinancialStatements_IncomeStatement_GainonSaleofLoans_OneMonth = 721

    FinancialStatements_IncomeStatement_GainonSaleofLoans_ThreeMonths = 722

    FinancialStatements_IncomeStatement_GainonSaleofLoans_SixMonths = 723

    FinancialStatements_IncomeStatement_GainonSaleofLoans_NineMonths = 724

    FinancialStatements_IncomeStatement_GainonSaleofLoans_TwelveMonths = 725

    FinancialStatements_IncomeStatement_GainonSaleofInvestmentProperty_ThreeMonths = 726

    FinancialStatements_IncomeStatement_GainonSaleofInvestmentProperty_SixMonths = 727

    FinancialStatements_IncomeStatement_GainonSaleofInvestmentProperty_NineMonths = 728

    FinancialStatements_IncomeStatement_GainonSaleofInvestmentProperty_TwelveMonths = 729

    FinancialStatements_IncomeStatement_LossonExtinguishmentofDebt_ThreeMonths = 730

    FinancialStatements_IncomeStatement_LossonExtinguishmentofDebt_SixMonths = 731

    FinancialStatements_IncomeStatement_LossonExtinguishmentofDebt_NineMonths = 732

    FinancialStatements_IncomeStatement_LossonExtinguishmentofDebt_TwelveMonths = 733

    FinancialStatements_IncomeStatement_EarningsfromEquityInterestNetOfTax_OneMonth = 734

    FinancialStatements_IncomeStatement_EarningsfromEquityInterestNetOfTax_TwoMonths = 735

    FinancialStatements_IncomeStatement_EarningsfromEquityInterestNetOfTax_ThreeMonths = 736

    FinancialStatements_IncomeStatement_EarningsfromEquityInterestNetOfTax_SixMonths = 737

    FinancialStatements_IncomeStatement_EarningsfromEquityInterestNetOfTax_NineMonths = 738

    FinancialStatements_IncomeStatement_EarningsfromEquityInterestNetOfTax_TwelveMonths = 739

    FinancialStatements_IncomeStatement_NetIncomeIncludingNoncontrollingInterests_OneMonth = 740

    FinancialStatements_IncomeStatement_NetIncomeIncludingNoncontrollingInterests_TwoMonths = 741

    FinancialStatements_IncomeStatement_NetIncomeIncludingNoncontrollingInterests_ThreeMonths = 742

    FinancialStatements_IncomeStatement_NetIncomeIncludingNoncontrollingInterests_SixMonths = 743

    FinancialStatements_IncomeStatement_NetIncomeIncludingNoncontrollingInterests_NineMonths = 744

    FinancialStatements_IncomeStatement_NetIncomeIncludingNoncontrollingInterests_TwelveMonths = 745

    FinancialStatements_IncomeStatement_OtherunderPreferredStockDividend_OneMonth = 746

    FinancialStatements_IncomeStatement_OtherunderPreferredStockDividend_ThreeMonths = 747

    FinancialStatements_IncomeStatement_OtherunderPreferredStockDividend_SixMonths = 748

    FinancialStatements_IncomeStatement_OtherunderPreferredStockDividend_NineMonths = 749

    FinancialStatements_IncomeStatement_OtherunderPreferredStockDividend_TwelveMonths = 750

    FinancialStatements_IncomeStatement_StaffCosts_TwoMonths = 751

    FinancialStatements_IncomeStatement_StaffCosts_ThreeMonths = 752

    FinancialStatements_IncomeStatement_StaffCosts_SixMonths = 753

    FinancialStatements_IncomeStatement_StaffCosts_NineMonths = 754

    FinancialStatements_IncomeStatement_StaffCosts_TwelveMonths = 755

    FinancialStatements_IncomeStatement_SocialSecurityCosts_TwelveMonths = 756

    FinancialStatements_IncomeStatement_PensionCosts_TwelveMonths = 757

    FinancialStatements_IncomeStatement_OtherOperatingIncomeTotal_TwoMonths = 758

    FinancialStatements_IncomeStatement_OtherOperatingIncomeTotal_ThreeMonths = 759

    FinancialStatements_IncomeStatement_OtherOperatingIncomeTotal_SixMonths = 760

    FinancialStatements_IncomeStatement_OtherOperatingIncomeTotal_NineMonths = 761

    FinancialStatements_IncomeStatement_OtherOperatingIncomeTotal_TwelveMonths = 762

    FinancialStatements_IncomeStatement_IncomefromAssociatesandOtherParticipatingInterests_ThreeMonths = 763

    FinancialStatements_IncomeStatement_IncomefromAssociatesandOtherParticipatingInterests_SixMonths = 764

    FinancialStatements_IncomeStatement_IncomefromAssociatesandOtherParticipatingInterests_NineMonths = 765

    FinancialStatements_IncomeStatement_IncomefromAssociatesandOtherParticipatingInterests_TwelveMonths = 766

    FinancialStatements_IncomeStatement_TotalOtherFinanceCost_ThreeMonths = 767

    FinancialStatements_IncomeStatement_TotalOtherFinanceCost_SixMonths = 768

    FinancialStatements_IncomeStatement_TotalOtherFinanceCost_NineMonths = 769

    FinancialStatements_IncomeStatement_TotalOtherFinanceCost_TwelveMonths = 770

    FinancialStatements_IncomeStatement_GrossDividendPayment_ThreeMonths = 771

    FinancialStatements_IncomeStatement_GrossDividendPayment_NineMonths = 772

    FinancialStatements_IncomeStatement_GrossDividendPayment_TwelveMonths = 773

    FinancialStatements_IncomeStatement_FeesandCommissionIncome_ThreeMonths = 774

    FinancialStatements_IncomeStatement_FeesandCommissionIncome_SixMonths = 775

    FinancialStatements_IncomeStatement_FeesandCommissionIncome_NineMonths = 776

    FinancialStatements_IncomeStatement_FeesandCommissionIncome_TwelveMonths = 777

    FinancialStatements_IncomeStatement_FeesandCommissionExpense_ThreeMonths = 778

    FinancialStatements_IncomeStatement_FeesandCommissionExpense_SixMonths = 779

    FinancialStatements_IncomeStatement_FeesandCommissionExpense_NineMonths = 780

    FinancialStatements_IncomeStatement_FeesandCommissionExpense_TwelveMonths = 781

    FinancialStatements_IncomeStatement_NetTradingIncome_TwelveMonths = 782

    FinancialStatements_IncomeStatement_OtherStaffCosts_TwelveMonths = 783

    FinancialStatements_IncomeStatement_GainonInvestmentProperties_ThreeMonths = 784

    FinancialStatements_IncomeStatement_GainonInvestmentProperties_SixMonths = 785

    FinancialStatements_IncomeStatement_GainonInvestmentProperties_NineMonths = 786

    FinancialStatements_IncomeStatement_GainonInvestmentProperties_TwelveMonths = 787

    FinancialStatements_IncomeStatement_AverageDilutionEarnings_ThreeMonths = 788

    FinancialStatements_IncomeStatement_AverageDilutionEarnings_SixMonths = 789

    FinancialStatements_IncomeStatement_AverageDilutionEarnings_NineMonths = 790

    FinancialStatements_IncomeStatement_AverageDilutionEarnings_TwelveMonths = 791

    FinancialStatements_IncomeStatement_GainLossonFinancialInstrumentsDesignatedasCashFlowHedges_ThreeMonths = 792

    FinancialStatements_IncomeStatement_GainLossonFinancialInstrumentsDesignatedasCashFlowHedges_SixMonths = 793

    FinancialStatements_IncomeStatement_GainLossonFinancialInstrumentsDesignatedasCashFlowHedges_NineMonths = 794

    FinancialStatements_IncomeStatement_GainLossonFinancialInstrumentsDesignatedasCashFlowHedges_TwelveMonths = 795

    FinancialStatements_IncomeStatement_GainLossonDerecognitionofAvailableForSaleFinancialAssets_ThreeMonths = 796

    FinancialStatements_IncomeStatement_GainLossonDerecognitionofAvailableForSaleFinancialAssets_SixMonths = 797

    FinancialStatements_IncomeStatement_GainLossonDerecognitionofAvailableForSaleFinancialAssets_NineMonths = 798

    FinancialStatements_IncomeStatement_GainLossonDerecognitionofAvailableForSaleFinancialAssets_TwelveMonths = 799

    FinancialStatements_IncomeStatement_NegativeGoodwillImmediatelyRecognized_ThreeMonths = 800

    FinancialStatements_IncomeStatement_NegativeGoodwillImmediatelyRecognized_SixMonths = 801

    FinancialStatements_IncomeStatement_NegativeGoodwillImmediatelyRecognized_TwelveMonths = 802

    FinancialStatements_IncomeStatement_GainsLossesonFinancialInstrumentsDuetoFairValueAdjustmentsinHedgeAccountingTotal_ThreeMonths = 803

    FinancialStatements_IncomeStatement_GainsLossesonFinancialInstrumentsDuetoFairValueAdjustmentsinHedgeAccountingTotal_SixMonths = 804

    FinancialStatements_IncomeStatement_GainsLossesonFinancialInstrumentsDuetoFairValueAdjustmentsinHedgeAccountingTotal_NineMonths = 805

    FinancialStatements_IncomeStatement_GainsLossesonFinancialInstrumentsDuetoFairValueAdjustmentsinHedgeAccountingTotal_TwelveMonths = 806

    FinancialStatements_IncomeStatement_ImpairmentLossesReversalsFinancialInstrumentsNet_ThreeMonths = 807

    FinancialStatements_IncomeStatement_ImpairmentLossesReversalsFinancialInstrumentsNet_SixMonths = 808

    FinancialStatements_IncomeStatement_ImpairmentLossesReversalsFinancialInstrumentsNet_NineMonths = 809

    FinancialStatements_IncomeStatement_ImpairmentLossesReversalsFinancialInstrumentsNet_TwelveMonths = 810

    FinancialStatements_IncomeStatement_ClaimsandPaidIncurred_ThreeMonths = 811

    FinancialStatements_IncomeStatement_ClaimsandPaidIncurred_SixMonths = 812

    FinancialStatements_IncomeStatement_ClaimsandPaidIncurred_NineMonths = 813

    FinancialStatements_IncomeStatement_ClaimsandPaidIncurred_TwelveMonths = 814

    FinancialStatements_IncomeStatement_ReinsuranceRecoveriesClaimsandBenefits_ThreeMonths = 815

    FinancialStatements_IncomeStatement_ReinsuranceRecoveriesClaimsandBenefits_SixMonths = 816

    FinancialStatements_IncomeStatement_ReinsuranceRecoveriesClaimsandBenefits_NineMonths = 817

    FinancialStatements_IncomeStatement_ReinsuranceRecoveriesClaimsandBenefits_TwelveMonths = 818

    FinancialStatements_IncomeStatement_ChangeinInsuranceLiabilitiesNetofReinsurance_ThreeMonths = 819

    FinancialStatements_IncomeStatement_ChangeinInsuranceLiabilitiesNetofReinsurance_SixMonths = 820

    FinancialStatements_IncomeStatement_ChangeinInsuranceLiabilitiesNetofReinsurance_NineMonths = 821

    FinancialStatements_IncomeStatement_ChangeinInsuranceLiabilitiesNetofReinsurance_TwelveMonths = 822

    FinancialStatements_IncomeStatement_ChangeinInvestmentContract_ThreeMonths = 823

    FinancialStatements_IncomeStatement_ChangeinInvestmentContract_SixMonths = 824

    FinancialStatements_IncomeStatement_ChangeinInvestmentContract_NineMonths = 825

    FinancialStatements_IncomeStatement_ChangeinInvestmentContract_TwelveMonths = 826

    FinancialStatements_IncomeStatement_CreditRiskProvisions_ThreeMonths = 827

    FinancialStatements_IncomeStatement_CreditRiskProvisions_SixMonths = 828

    FinancialStatements_IncomeStatement_CreditRiskProvisions_NineMonths = 829

    FinancialStatements_IncomeStatement_CreditRiskProvisions_TwelveMonths = 830

    FinancialStatements_IncomeStatement_WagesandSalaries_SixMonths = 831

    FinancialStatements_IncomeStatement_WagesandSalaries_TwelveMonths = 832

    FinancialStatements_IncomeStatement_OtherNonOperatingIncomeExpenses_TwoMonths = 833

    FinancialStatements_IncomeStatement_OtherNonOperatingIncomeExpenses_ThreeMonths = 834

    FinancialStatements_IncomeStatement_OtherNonOperatingIncomeExpenses_SixMonths = 835

    FinancialStatements_IncomeStatement_OtherNonOperatingIncomeExpenses_NineMonths = 836

    FinancialStatements_IncomeStatement_OtherNonOperatingIncomeExpenses_TwelveMonths = 837

    FinancialStatements_IncomeStatement_OtherNonOperatingIncome_ThreeMonths = 838

    FinancialStatements_IncomeStatement_OtherNonOperatingIncome_SixMonths = 839

    FinancialStatements_IncomeStatement_OtherNonOperatingIncome_NineMonths = 840

    FinancialStatements_IncomeStatement_OtherNonOperatingIncome_TwelveMonths = 841

    FinancialStatements_IncomeStatement_OtherNonOperatingExpenses_ThreeMonths = 842

    FinancialStatements_IncomeStatement_OtherNonOperatingExpenses_SixMonths = 843

    FinancialStatements_IncomeStatement_OtherNonOperatingExpenses_NineMonths = 844

    FinancialStatements_IncomeStatement_OtherNonOperatingExpenses_TwelveMonths = 845

    FinancialStatements_IncomeStatement_TotalUnusualItems_OneMonth = 846

    FinancialStatements_IncomeStatement_TotalUnusualItems_TwoMonths = 847

    FinancialStatements_IncomeStatement_TotalUnusualItems_ThreeMonths = 848

    FinancialStatements_IncomeStatement_TotalUnusualItems_SixMonths = 849

    FinancialStatements_IncomeStatement_TotalUnusualItems_NineMonths = 850

    FinancialStatements_IncomeStatement_TotalUnusualItems_TwelveMonths = 851

    FinancialStatements_IncomeStatement_TotalUnusualItemsExcludingGoodwill_OneMonth = 852

    FinancialStatements_IncomeStatement_TotalUnusualItemsExcludingGoodwill_TwoMonths = 853

    FinancialStatements_IncomeStatement_TotalUnusualItemsExcludingGoodwill_ThreeMonths = 854

    FinancialStatements_IncomeStatement_TotalUnusualItemsExcludingGoodwill_SixMonths = 855

    FinancialStatements_IncomeStatement_TotalUnusualItemsExcludingGoodwill_NineMonths = 856

    FinancialStatements_IncomeStatement_TotalUnusualItemsExcludingGoodwill_TwelveMonths = 857

    FinancialStatements_IncomeStatement_TaxRateForCalcs_OneMonth = 858

    FinancialStatements_IncomeStatement_TaxRateForCalcs_TwoMonths = 859

    FinancialStatements_IncomeStatement_TaxRateForCalcs_ThreeMonths = 860

    FinancialStatements_IncomeStatement_TaxRateForCalcs_SixMonths = 861

    FinancialStatements_IncomeStatement_TaxRateForCalcs_NineMonths = 862

    FinancialStatements_IncomeStatement_TaxRateForCalcs_TwelveMonths = 863

    FinancialStatements_IncomeStatement_TaxEffectOfUnusualItems_OneMonth = 864

    FinancialStatements_IncomeStatement_TaxEffectOfUnusualItems_TwoMonths = 865

    FinancialStatements_IncomeStatement_TaxEffectOfUnusualItems_ThreeMonths = 866

    FinancialStatements_IncomeStatement_TaxEffectOfUnusualItems_SixMonths = 867

    FinancialStatements_IncomeStatement_TaxEffectOfUnusualItems_NineMonths = 868

    FinancialStatements_IncomeStatement_TaxEffectOfUnusualItems_TwelveMonths = 869

    FinancialStatements_IncomeStatement_NormalizedEBITDA_OneMonth = 870

    FinancialStatements_IncomeStatement_NormalizedEBITDA_TwoMonths = 871

    FinancialStatements_IncomeStatement_NormalizedEBITDA_ThreeMonths = 872

    FinancialStatements_IncomeStatement_NormalizedEBITDA_SixMonths = 873

    FinancialStatements_IncomeStatement_NormalizedEBITDA_NineMonths = 874

    FinancialStatements_IncomeStatement_NormalizedEBITDA_TwelveMonths = 875

    FinancialStatements_IncomeStatement_StockBasedCompensation_ThreeMonths = 876

    FinancialStatements_IncomeStatement_StockBasedCompensation_SixMonths = 877

    FinancialStatements_IncomeStatement_StockBasedCompensation_NineMonths = 878

    FinancialStatements_IncomeStatement_StockBasedCompensation_TwelveMonths = 879

    FinancialStatements_IncomeStatement_DilutedNIAvailtoComStockholders_ThreeMonths = 880

    FinancialStatements_IncomeStatement_DilutedNIAvailtoComStockholders_SixMonths = 881

    FinancialStatements_IncomeStatement_DilutedNIAvailtoComStockholders_NineMonths = 882

    FinancialStatements_IncomeStatement_DilutedNIAvailtoComStockholders_TwelveMonths = 883

    FinancialStatements_IncomeStatement_InvestmentContractLiabilitiesIncurred_ThreeMonths = 884

    FinancialStatements_IncomeStatement_InvestmentContractLiabilitiesIncurred_SixMonths = 885

    FinancialStatements_IncomeStatement_InvestmentContractLiabilitiesIncurred_NineMonths = 886

    FinancialStatements_IncomeStatement_InvestmentContractLiabilitiesIncurred_TwelveMonths = 887

    FinancialStatements_IncomeStatement_ReinsuranceRecoveriesofInvestmentContract_ThreeMonths = 888

    FinancialStatements_IncomeStatement_ReinsuranceRecoveriesofInvestmentContract_SixMonths = 889

    FinancialStatements_IncomeStatement_ReinsuranceRecoveriesofInvestmentContract_NineMonths = 890

    FinancialStatements_IncomeStatement_ReinsuranceRecoveriesofInvestmentContract_TwelveMonths = 891

    FinancialStatements_IncomeStatement_TotalDividendPaymentofEquityShares_ThreeMonths = 892

    FinancialStatements_IncomeStatement_TotalDividendPaymentofEquityShares_SixMonths = 893

    FinancialStatements_IncomeStatement_TotalDividendPaymentofEquityShares_NineMonths = 894

    FinancialStatements_IncomeStatement_TotalDividendPaymentofEquityShares_TwelveMonths = 895

    FinancialStatements_IncomeStatement_TotalDividendPaymentofNonEquityShares_ThreeMonths = 896

    FinancialStatements_IncomeStatement_TotalDividendPaymentofNonEquityShares_SixMonths = 897

    FinancialStatements_IncomeStatement_TotalDividendPaymentofNonEquityShares_NineMonths = 898

    FinancialStatements_IncomeStatement_TotalDividendPaymentofNonEquityShares_TwelveMonths = 899

    FinancialStatements_IncomeStatement_ChangeinTheGrossProvisionforUnearnedPremiums_ThreeMonths = 900

    FinancialStatements_IncomeStatement_ChangeinTheGrossProvisionforUnearnedPremiums_SixMonths = 901

    FinancialStatements_IncomeStatement_ChangeinTheGrossProvisionforUnearnedPremiums_NineMonths = 902

    FinancialStatements_IncomeStatement_ChangeinTheGrossProvisionforUnearnedPremiums_TwelveMonths = 903

    FinancialStatements_IncomeStatement_ChangeinTheGrossProvisionforUnearnedPremiumsReinsurersShare_ThreeMonths = 904

    FinancialStatements_IncomeStatement_ChangeinTheGrossProvisionforUnearnedPremiumsReinsurersShare_SixMonths = 905

    FinancialStatements_IncomeStatement_ChangeinTheGrossProvisionforUnearnedPremiumsReinsurersShare_NineMonths = 906

    FinancialStatements_IncomeStatement_ChangeinTheGrossProvisionforUnearnedPremiumsReinsurersShare_TwelveMonths = 907

    FinancialStatements_IncomeStatement_ClaimsandChangeinInsuranceLiabilities_ThreeMonths = 908

    FinancialStatements_IncomeStatement_ClaimsandChangeinInsuranceLiabilities_SixMonths = 909

    FinancialStatements_IncomeStatement_ClaimsandChangeinInsuranceLiabilities_NineMonths = 910

    FinancialStatements_IncomeStatement_ClaimsandChangeinInsuranceLiabilities_TwelveMonths = 911

    FinancialStatements_IncomeStatement_ReinsuranceRecoveriesofInsuranceLiabilities_ThreeMonths = 912

    FinancialStatements_IncomeStatement_ReinsuranceRecoveriesofInsuranceLiabilities_SixMonths = 913

    FinancialStatements_IncomeStatement_ReinsuranceRecoveriesofInsuranceLiabilities_NineMonths = 914

    FinancialStatements_IncomeStatement_ReinsuranceRecoveriesofInsuranceLiabilities_TwelveMonths = 915

    FinancialStatements_IncomeStatement_TotalOperatingIncomeAsReported_ThreeMonths = 916

    FinancialStatements_IncomeStatement_TotalOperatingIncomeAsReported_SixMonths = 917

    FinancialStatements_IncomeStatement_TotalOperatingIncomeAsReported_NineMonths = 918

    FinancialStatements_IncomeStatement_TotalOperatingIncomeAsReported_TwelveMonths = 919

    FinancialStatements_IncomeStatement_OtherGA_ThreeMonths = 920

    FinancialStatements_IncomeStatement_OtherGA_SixMonths = 921

    FinancialStatements_IncomeStatement_OtherGA_NineMonths = 922

    FinancialStatements_IncomeStatement_OtherGA_TwelveMonths = 923

    FinancialStatements_IncomeStatement_OtherCostofRevenue_ThreeMonths = 924

    FinancialStatements_IncomeStatement_OtherCostofRevenue_SixMonths = 925

    FinancialStatements_IncomeStatement_OtherCostofRevenue_NineMonths = 926

    FinancialStatements_IncomeStatement_OtherCostofRevenue_TwelveMonths = 927

    FinancialStatements_IncomeStatement_RentandLandingFeesCostofRevenue_ThreeMonths = 928

    FinancialStatements_IncomeStatement_RentandLandingFeesCostofRevenue_SixMonths = 929

    FinancialStatements_IncomeStatement_RentandLandingFeesCostofRevenue_NineMonths = 930

    FinancialStatements_IncomeStatement_RentandLandingFeesCostofRevenue_TwelveMonths = 931

    FinancialStatements_IncomeStatement_DDACostofRevenue_ThreeMonths = 932

    FinancialStatements_IncomeStatement_DDACostofRevenue_SixMonths = 933

    FinancialStatements_IncomeStatement_DDACostofRevenue_NineMonths = 934

    FinancialStatements_IncomeStatement_DDACostofRevenue_TwelveMonths = 935

    FinancialStatements_IncomeStatement_RentExpenseSupplemental_ThreeMonths = 936

    FinancialStatements_IncomeStatement_RentExpenseSupplemental_SixMonths = 937

    FinancialStatements_IncomeStatement_RentExpenseSupplemental_NineMonths = 938

    FinancialStatements_IncomeStatement_RentExpenseSupplemental_TwelveMonths = 939

    FinancialStatements_IncomeStatement_NormalizedPreTaxIncome_ThreeMonths = 940

    FinancialStatements_IncomeStatement_NormalizedPreTaxIncome_SixMonths = 941

    FinancialStatements_IncomeStatement_NormalizedPreTaxIncome_NineMonths = 942

    FinancialStatements_IncomeStatement_NormalizedPreTaxIncome_TwelveMonths = 943

    FinancialStatements_IncomeStatement_ResearchAndDevelopmentExpensesSupplemental_ThreeMonths = 944

    FinancialStatements_IncomeStatement_ResearchAndDevelopmentExpensesSupplemental_SixMonths = 945

    FinancialStatements_IncomeStatement_ResearchAndDevelopmentExpensesSupplemental_NineMonths = 946

    FinancialStatements_IncomeStatement_ResearchAndDevelopmentExpensesSupplemental_TwelveMonths = 947

    FinancialStatements_IncomeStatement_DepreciationSupplemental_ThreeMonths = 948

    FinancialStatements_IncomeStatement_DepreciationSupplemental_SixMonths = 949

    FinancialStatements_IncomeStatement_DepreciationSupplemental_NineMonths = 950

    FinancialStatements_IncomeStatement_DepreciationSupplemental_TwelveMonths = 951

    FinancialStatements_IncomeStatement_AmortizationSupplemental_ThreeMonths = 952

    FinancialStatements_IncomeStatement_AmortizationSupplemental_SixMonths = 953

    FinancialStatements_IncomeStatement_AmortizationSupplemental_NineMonths = 954

    FinancialStatements_IncomeStatement_AmortizationSupplemental_TwelveMonths = 955

    FinancialStatements_IncomeStatement_TotalRevenueAsReported_ThreeMonths = 956

    FinancialStatements_IncomeStatement_TotalRevenueAsReported_SixMonths = 957

    FinancialStatements_IncomeStatement_TotalRevenueAsReported_NineMonths = 958

    FinancialStatements_IncomeStatement_TotalRevenueAsReported_TwelveMonths = 959

    FinancialStatements_IncomeStatement_OperatingExpenseAsReported_ThreeMonths = 960

    FinancialStatements_IncomeStatement_OperatingExpenseAsReported_SixMonths = 961

    FinancialStatements_IncomeStatement_OperatingExpenseAsReported_NineMonths = 962

    FinancialStatements_IncomeStatement_OperatingExpenseAsReported_TwelveMonths = 963

    FinancialStatements_IncomeStatement_NormalizedIncomeAsReported_ThreeMonths = 964

    FinancialStatements_IncomeStatement_NormalizedIncomeAsReported_SixMonths = 965

    FinancialStatements_IncomeStatement_NormalizedIncomeAsReported_NineMonths = 966

    FinancialStatements_IncomeStatement_NormalizedIncomeAsReported_TwelveMonths = 967

    FinancialStatements_IncomeStatement_NormalizedEBITDAAsReported_ThreeMonths = 968

    FinancialStatements_IncomeStatement_NormalizedEBITDAAsReported_SixMonths = 969

    FinancialStatements_IncomeStatement_NormalizedEBITDAAsReported_NineMonths = 970

    FinancialStatements_IncomeStatement_NormalizedEBITDAAsReported_TwelveMonths = 971

    FinancialStatements_IncomeStatement_NormalizedEBITAsReported_ThreeMonths = 972

    FinancialStatements_IncomeStatement_NormalizedEBITAsReported_SixMonths = 973

    FinancialStatements_IncomeStatement_NormalizedEBITAsReported_NineMonths = 974

    FinancialStatements_IncomeStatement_NormalizedEBITAsReported_TwelveMonths = 975

    FinancialStatements_IncomeStatement_NormalizedOperatingProfitAsReported_ThreeMonths = 976

    FinancialStatements_IncomeStatement_NormalizedOperatingProfitAsReported_SixMonths = 977

    FinancialStatements_IncomeStatement_NormalizedOperatingProfitAsReported_NineMonths = 978

    FinancialStatements_IncomeStatement_NormalizedOperatingProfitAsReported_TwelveMonths = 979

    FinancialStatements_IncomeStatement_EffectiveTaxRateAsReported_ThreeMonths = 980

    FinancialStatements_IncomeStatement_EffectiveTaxRateAsReported_SixMonths = 981

    FinancialStatements_IncomeStatement_EffectiveTaxRateAsReported_NineMonths = 982

    FinancialStatements_IncomeStatement_EffectiveTaxRateAsReported_TwelveMonths = 983

    FinancialStatements_BalanceSheet_BSFileDate_OneMonth = 984

    FinancialStatements_BalanceSheet_BSFileDate_ThreeMonths = 985

    FinancialStatements_BalanceSheet_BSFileDate_TwelveMonths = 986

    FinancialStatements_BalanceSheet_AccountsPayable_OneMonth = 987

    FinancialStatements_BalanceSheet_AccountsPayable_TwoMonths = 988

    FinancialStatements_BalanceSheet_AccountsPayable_ThreeMonths = 989

    FinancialStatements_BalanceSheet_AccountsPayable_SixMonths = 990

    FinancialStatements_BalanceSheet_AccountsPayable_NineMonths = 991

    FinancialStatements_BalanceSheet_AccountsPayable_TwelveMonths = 992

    FinancialStatements_BalanceSheet_AccountsReceivable_OneMonth = 993

    FinancialStatements_BalanceSheet_AccountsReceivable_TwoMonths = 994

    FinancialStatements_BalanceSheet_AccountsReceivable_ThreeMonths = 995

    FinancialStatements_BalanceSheet_AccountsReceivable_SixMonths = 996

    FinancialStatements_BalanceSheet_AccountsReceivable_NineMonths = 997

    FinancialStatements_BalanceSheet_AccountsReceivable_TwelveMonths = 998

    FinancialStatements_BalanceSheet_CurrentAccruedExpenses_OneMonth = 999

    FinancialStatements_BalanceSheet_CurrentAccruedExpenses_TwoMonths = 1000

    FinancialStatements_BalanceSheet_CurrentAccruedExpenses_ThreeMonths = 1001

    FinancialStatements_BalanceSheet_CurrentAccruedExpenses_SixMonths = 1002

    FinancialStatements_BalanceSheet_CurrentAccruedExpenses_NineMonths = 1003

    FinancialStatements_BalanceSheet_CurrentAccruedExpenses_TwelveMonths = 1004

    FinancialStatements_BalanceSheet_NonCurrentAccruedExpenses_ThreeMonths = 1005

    FinancialStatements_BalanceSheet_NonCurrentAccruedExpenses_SixMonths = 1006

    FinancialStatements_BalanceSheet_NonCurrentAccruedExpenses_NineMonths = 1007

    FinancialStatements_BalanceSheet_NonCurrentAccruedExpenses_TwelveMonths = 1008

    FinancialStatements_BalanceSheet_AccruedInvestmentIncome_ThreeMonths = 1009

    FinancialStatements_BalanceSheet_AccruedInvestmentIncome_SixMonths = 1010

    FinancialStatements_BalanceSheet_AccruedInvestmentIncome_TwelveMonths = 1011

    FinancialStatements_BalanceSheet_AccumulatedDepreciation_OneMonth = 1012

    FinancialStatements_BalanceSheet_AccumulatedDepreciation_TwoMonths = 1013

    FinancialStatements_BalanceSheet_AccumulatedDepreciation_ThreeMonths = 1014

    FinancialStatements_BalanceSheet_AccumulatedDepreciation_SixMonths = 1015

    FinancialStatements_BalanceSheet_AccumulatedDepreciation_NineMonths = 1016

    FinancialStatements_BalanceSheet_AccumulatedDepreciation_TwelveMonths = 1017

    FinancialStatements_BalanceSheet_GainsLossesNotAffectingRetainedEarnings_OneMonth = 1018

    FinancialStatements_BalanceSheet_GainsLossesNotAffectingRetainedEarnings_TwoMonths = 1019

    FinancialStatements_BalanceSheet_GainsLossesNotAffectingRetainedEarnings_ThreeMonths = 1020

    FinancialStatements_BalanceSheet_GainsLossesNotAffectingRetainedEarnings_SixMonths = 1021

    FinancialStatements_BalanceSheet_GainsLossesNotAffectingRetainedEarnings_NineMonths = 1022

    FinancialStatements_BalanceSheet_GainsLossesNotAffectingRetainedEarnings_TwelveMonths = 1023

    FinancialStatements_BalanceSheet_AdditionalPaidInCapital_OneMonth = 1024

    FinancialStatements_BalanceSheet_AdditionalPaidInCapital_TwoMonths = 1025

    FinancialStatements_BalanceSheet_AdditionalPaidInCapital_ThreeMonths = 1026

    FinancialStatements_BalanceSheet_AdditionalPaidInCapital_SixMonths = 1027

    FinancialStatements_BalanceSheet_AdditionalPaidInCapital_NineMonths = 1028

    FinancialStatements_BalanceSheet_AdditionalPaidInCapital_TwelveMonths = 1029

    FinancialStatements_BalanceSheet_AllowanceForLoansAndLeaseLosses_ThreeMonths = 1030

    FinancialStatements_BalanceSheet_AllowanceForLoansAndLeaseLosses_SixMonths = 1031

    FinancialStatements_BalanceSheet_AllowanceForLoansAndLeaseLosses_NineMonths = 1032

    FinancialStatements_BalanceSheet_AllowanceForLoansAndLeaseLosses_TwelveMonths = 1033

    FinancialStatements_BalanceSheet_AvailableForSaleSecurities_ThreeMonths = 1034

    FinancialStatements_BalanceSheet_AvailableForSaleSecurities_SixMonths = 1035

    FinancialStatements_BalanceSheet_AvailableForSaleSecurities_NineMonths = 1036

    FinancialStatements_BalanceSheet_AvailableForSaleSecurities_TwelveMonths = 1037

    FinancialStatements_BalanceSheet_CapitalStock_OneMonth = 1038

    FinancialStatements_BalanceSheet_CapitalStock_TwoMonths = 1039

    FinancialStatements_BalanceSheet_CapitalStock_ThreeMonths = 1040

    FinancialStatements_BalanceSheet_CapitalStock_SixMonths = 1041

    FinancialStatements_BalanceSheet_CapitalStock_NineMonths = 1042

    FinancialStatements_BalanceSheet_CapitalStock_TwelveMonths = 1043

    FinancialStatements_BalanceSheet_Cash_OneMonth = 1044

    FinancialStatements_BalanceSheet_Cash_TwoMonths = 1045

    FinancialStatements_BalanceSheet_Cash_ThreeMonths = 1046

    FinancialStatements_BalanceSheet_Cash_SixMonths = 1047

    FinancialStatements_BalanceSheet_Cash_NineMonths = 1048

    FinancialStatements_BalanceSheet_Cash_TwelveMonths = 1049

    FinancialStatements_BalanceSheet_CashEquivalents_ThreeMonths = 1050

    FinancialStatements_BalanceSheet_CashEquivalents_SixMonths = 1051

    FinancialStatements_BalanceSheet_CashEquivalents_NineMonths = 1052

    FinancialStatements_BalanceSheet_CashEquivalents_TwelveMonths = 1053

    FinancialStatements_BalanceSheet_CashAndCashEquivalents_OneMonth = 1054

    FinancialStatements_BalanceSheet_CashAndCashEquivalents_TwoMonths = 1055

    FinancialStatements_BalanceSheet_CashAndCashEquivalents_ThreeMonths = 1056

    FinancialStatements_BalanceSheet_CashAndCashEquivalents_SixMonths = 1057

    FinancialStatements_BalanceSheet_CashAndCashEquivalents_NineMonths = 1058

    FinancialStatements_BalanceSheet_CashAndCashEquivalents_TwelveMonths = 1059

    FinancialStatements_BalanceSheet_CashAndDueFromBanks_ThreeMonths = 1060

    FinancialStatements_BalanceSheet_CashAndDueFromBanks_SixMonths = 1061

    FinancialStatements_BalanceSheet_CashAndDueFromBanks_NineMonths = 1062

    FinancialStatements_BalanceSheet_CashAndDueFromBanks_TwelveMonths = 1063

    FinancialStatements_BalanceSheet_CashCashEquivalentsAndFederalFundsSold_TwoMonths = 1064

    FinancialStatements_BalanceSheet_CashCashEquivalentsAndFederalFundsSold_ThreeMonths = 1065

    FinancialStatements_BalanceSheet_CashCashEquivalentsAndFederalFundsSold_SixMonths = 1066

    FinancialStatements_BalanceSheet_CashCashEquivalentsAndFederalFundsSold_NineMonths = 1067

    FinancialStatements_BalanceSheet_CashCashEquivalentsAndFederalFundsSold_TwelveMonths = 1068

    FinancialStatements_BalanceSheet_CashCashEquivalentsAndMarketableSecurities_OneMonth = 1069

    FinancialStatements_BalanceSheet_CashCashEquivalentsAndMarketableSecurities_TwoMonths = 1070

    FinancialStatements_BalanceSheet_CashCashEquivalentsAndMarketableSecurities_ThreeMonths = 1071

    FinancialStatements_BalanceSheet_CashCashEquivalentsAndMarketableSecurities_SixMonths = 1072

    FinancialStatements_BalanceSheet_CashCashEquivalentsAndMarketableSecurities_NineMonths = 1073

    FinancialStatements_BalanceSheet_CashCashEquivalentsAndMarketableSecurities_TwelveMonths = 1074

    FinancialStatements_BalanceSheet_CommonStock_OneMonth = 1075

    FinancialStatements_BalanceSheet_CommonStock_TwoMonths = 1076

    FinancialStatements_BalanceSheet_CommonStock_ThreeMonths = 1077

    FinancialStatements_BalanceSheet_CommonStock_SixMonths = 1078

    FinancialStatements_BalanceSheet_CommonStock_NineMonths = 1079

    FinancialStatements_BalanceSheet_CommonStock_TwelveMonths = 1080

    FinancialStatements_BalanceSheet_CurrentAssets_OneMonth = 1081

    FinancialStatements_BalanceSheet_CurrentAssets_TwoMonths = 1082

    FinancialStatements_BalanceSheet_CurrentAssets_ThreeMonths = 1083

    FinancialStatements_BalanceSheet_CurrentAssets_SixMonths = 1084

    FinancialStatements_BalanceSheet_CurrentAssets_NineMonths = 1085

    FinancialStatements_BalanceSheet_CurrentAssets_TwelveMonths = 1086

    FinancialStatements_BalanceSheet_CurrentDebt_OneMonth = 1087

    FinancialStatements_BalanceSheet_CurrentDebt_TwoMonths = 1088

    FinancialStatements_BalanceSheet_CurrentDebt_ThreeMonths = 1089

    FinancialStatements_BalanceSheet_CurrentDebt_SixMonths = 1090

    FinancialStatements_BalanceSheet_CurrentDebt_NineMonths = 1091

    FinancialStatements_BalanceSheet_CurrentDebt_TwelveMonths = 1092

    FinancialStatements_BalanceSheet_CurrentDebtAndCapitalLeaseObligation_OneMonth = 1093

    FinancialStatements_BalanceSheet_CurrentDebtAndCapitalLeaseObligation_TwoMonths = 1094

    FinancialStatements_BalanceSheet_CurrentDebtAndCapitalLeaseObligation_ThreeMonths = 1095

    FinancialStatements_BalanceSheet_CurrentDebtAndCapitalLeaseObligation_SixMonths = 1096

    FinancialStatements_BalanceSheet_CurrentDebtAndCapitalLeaseObligation_NineMonths = 1097

    FinancialStatements_BalanceSheet_CurrentDebtAndCapitalLeaseObligation_TwelveMonths = 1098

    FinancialStatements_BalanceSheet_CurrentLiabilities_OneMonth = 1099

    FinancialStatements_BalanceSheet_CurrentLiabilities_TwoMonths = 1100

    FinancialStatements_BalanceSheet_CurrentLiabilities_ThreeMonths = 1101

    FinancialStatements_BalanceSheet_CurrentLiabilities_SixMonths = 1102

    FinancialStatements_BalanceSheet_CurrentLiabilities_NineMonths = 1103

    FinancialStatements_BalanceSheet_CurrentLiabilities_TwelveMonths = 1104

    FinancialStatements_BalanceSheet_CurrentCapitalLeaseObligation_OneMonth = 1105

    FinancialStatements_BalanceSheet_CurrentCapitalLeaseObligation_TwoMonths = 1106

    FinancialStatements_BalanceSheet_CurrentCapitalLeaseObligation_ThreeMonths = 1107

    FinancialStatements_BalanceSheet_CurrentCapitalLeaseObligation_SixMonths = 1108

    FinancialStatements_BalanceSheet_CurrentCapitalLeaseObligation_NineMonths = 1109

    FinancialStatements_BalanceSheet_CurrentCapitalLeaseObligation_TwelveMonths = 1110

    FinancialStatements_BalanceSheet_DeferredAssets_ThreeMonths = 1111

    FinancialStatements_BalanceSheet_DeferredAssets_SixMonths = 1112

    FinancialStatements_BalanceSheet_DeferredAssets_NineMonths = 1113

    FinancialStatements_BalanceSheet_DeferredAssets_TwelveMonths = 1114

    FinancialStatements_BalanceSheet_DeferredCosts_OneMonth = 1115

    FinancialStatements_BalanceSheet_DeferredCosts_TwoMonths = 1116

    FinancialStatements_BalanceSheet_DeferredCosts_ThreeMonths = 1117

    FinancialStatements_BalanceSheet_DeferredCosts_SixMonths = 1118

    FinancialStatements_BalanceSheet_DeferredCosts_NineMonths = 1119

    FinancialStatements_BalanceSheet_DeferredCosts_TwelveMonths = 1120

    FinancialStatements_BalanceSheet_NonCurrentDeferredLiabilities_OneMonth = 1121

    FinancialStatements_BalanceSheet_NonCurrentDeferredLiabilities_TwoMonths = 1122

    FinancialStatements_BalanceSheet_NonCurrentDeferredLiabilities_ThreeMonths = 1123

    FinancialStatements_BalanceSheet_NonCurrentDeferredLiabilities_SixMonths = 1124

    FinancialStatements_BalanceSheet_NonCurrentDeferredLiabilities_NineMonths = 1125

    FinancialStatements_BalanceSheet_NonCurrentDeferredLiabilities_TwelveMonths = 1126

    FinancialStatements_BalanceSheet_CurrentDeferredLiabilities_OneMonth = 1127

    FinancialStatements_BalanceSheet_CurrentDeferredLiabilities_TwoMonths = 1128

    FinancialStatements_BalanceSheet_CurrentDeferredLiabilities_ThreeMonths = 1129

    FinancialStatements_BalanceSheet_CurrentDeferredLiabilities_SixMonths = 1130

    FinancialStatements_BalanceSheet_CurrentDeferredLiabilities_NineMonths = 1131

    FinancialStatements_BalanceSheet_CurrentDeferredLiabilities_TwelveMonths = 1132

    FinancialStatements_BalanceSheet_DeferredPolicyAcquisitionCosts_ThreeMonths = 1133

    FinancialStatements_BalanceSheet_DeferredPolicyAcquisitionCosts_SixMonths = 1134

    FinancialStatements_BalanceSheet_DeferredPolicyAcquisitionCosts_NineMonths = 1135

    FinancialStatements_BalanceSheet_DeferredPolicyAcquisitionCosts_TwelveMonths = 1136

    FinancialStatements_BalanceSheet_CurrentDeferredRevenue_OneMonth = 1137

    FinancialStatements_BalanceSheet_CurrentDeferredRevenue_TwoMonths = 1138

    FinancialStatements_BalanceSheet_CurrentDeferredRevenue_ThreeMonths = 1139

    FinancialStatements_BalanceSheet_CurrentDeferredRevenue_SixMonths = 1140

    FinancialStatements_BalanceSheet_CurrentDeferredRevenue_NineMonths = 1141

    FinancialStatements_BalanceSheet_CurrentDeferredRevenue_TwelveMonths = 1142

    FinancialStatements_BalanceSheet_NonCurrentDeferredRevenue_OneMonth = 1143

    FinancialStatements_BalanceSheet_NonCurrentDeferredRevenue_TwoMonths = 1144

    FinancialStatements_BalanceSheet_NonCurrentDeferredRevenue_ThreeMonths = 1145

    FinancialStatements_BalanceSheet_NonCurrentDeferredRevenue_SixMonths = 1146

    FinancialStatements_BalanceSheet_NonCurrentDeferredRevenue_NineMonths = 1147

    FinancialStatements_BalanceSheet_NonCurrentDeferredRevenue_TwelveMonths = 1148

    FinancialStatements_BalanceSheet_DeferredTaxAssets_ThreeMonths = 1149

    FinancialStatements_BalanceSheet_DeferredTaxAssets_SixMonths = 1150

    FinancialStatements_BalanceSheet_DeferredTaxAssets_NineMonths = 1151

    FinancialStatements_BalanceSheet_DeferredTaxAssets_TwelveMonths = 1152

    FinancialStatements_BalanceSheet_CurrentDeferredTaxesAssets_OneMonth = 1153

    FinancialStatements_BalanceSheet_CurrentDeferredTaxesAssets_TwoMonths = 1154

    FinancialStatements_BalanceSheet_CurrentDeferredTaxesAssets_ThreeMonths = 1155

    FinancialStatements_BalanceSheet_CurrentDeferredTaxesAssets_SixMonths = 1156

    FinancialStatements_BalanceSheet_CurrentDeferredTaxesAssets_NineMonths = 1157

    FinancialStatements_BalanceSheet_CurrentDeferredTaxesAssets_TwelveMonths = 1158

    FinancialStatements_BalanceSheet_CurrentDeferredTaxesLiabilities_ThreeMonths = 1159

    FinancialStatements_BalanceSheet_CurrentDeferredTaxesLiabilities_SixMonths = 1160

    FinancialStatements_BalanceSheet_CurrentDeferredTaxesLiabilities_NineMonths = 1161

    FinancialStatements_BalanceSheet_CurrentDeferredTaxesLiabilities_TwelveMonths = 1162

    FinancialStatements_BalanceSheet_NonCurrentDeferredTaxesAssets_OneMonth = 1163

    FinancialStatements_BalanceSheet_NonCurrentDeferredTaxesAssets_TwoMonths = 1164

    FinancialStatements_BalanceSheet_NonCurrentDeferredTaxesAssets_ThreeMonths = 1165

    FinancialStatements_BalanceSheet_NonCurrentDeferredTaxesAssets_SixMonths = 1166

    FinancialStatements_BalanceSheet_NonCurrentDeferredTaxesAssets_NineMonths = 1167

    FinancialStatements_BalanceSheet_NonCurrentDeferredTaxesAssets_TwelveMonths = 1168

    FinancialStatements_BalanceSheet_NonCurrentDeferredTaxesLiabilities_OneMonth = 1169

    FinancialStatements_BalanceSheet_NonCurrentDeferredTaxesLiabilities_TwoMonths = 1170

    FinancialStatements_BalanceSheet_NonCurrentDeferredTaxesLiabilities_ThreeMonths = 1171

    FinancialStatements_BalanceSheet_NonCurrentDeferredTaxesLiabilities_SixMonths = 1172

    FinancialStatements_BalanceSheet_NonCurrentDeferredTaxesLiabilities_NineMonths = 1173

    FinancialStatements_BalanceSheet_NonCurrentDeferredTaxesLiabilities_TwelveMonths = 1174

    FinancialStatements_BalanceSheet_EquityInvestments_ThreeMonths = 1175

    FinancialStatements_BalanceSheet_EquityInvestments_NineMonths = 1176

    FinancialStatements_BalanceSheet_EquityInvestments_TwelveMonths = 1177

    FinancialStatements_BalanceSheet_FederalFundsPurchasedAndSecuritiesSoldUnderAgreementToRepurchase_ThreeMonths = 1178

    FinancialStatements_BalanceSheet_FederalFundsPurchasedAndSecuritiesSoldUnderAgreementToRepurchase_SixMonths = 1179

    FinancialStatements_BalanceSheet_FederalFundsPurchasedAndSecuritiesSoldUnderAgreementToRepurchase_TwelveMonths = 1180

    FinancialStatements_BalanceSheet_FederalFundsSoldAndSecuritiesPurchaseUnderAgreementsToResell_ThreeMonths = 1181

    FinancialStatements_BalanceSheet_FederalFundsSoldAndSecuritiesPurchaseUnderAgreementsToResell_SixMonths = 1182

    FinancialStatements_BalanceSheet_FederalFundsSoldAndSecuritiesPurchaseUnderAgreementsToResell_NineMonths = 1183

    FinancialStatements_BalanceSheet_FederalFundsSoldAndSecuritiesPurchaseUnderAgreementsToResell_TwelveMonths = 1184

    FinancialStatements_BalanceSheet_FixedMaturityInvestments_ThreeMonths = 1185

    FinancialStatements_BalanceSheet_FixedMaturityInvestments_SixMonths = 1186

    FinancialStatements_BalanceSheet_FixedMaturityInvestments_NineMonths = 1187

    FinancialStatements_BalanceSheet_FixedMaturityInvestments_TwelveMonths = 1188

    FinancialStatements_BalanceSheet_FuturePolicyBenefits_ThreeMonths = 1189

    FinancialStatements_BalanceSheet_FuturePolicyBenefits_TwelveMonths = 1190

    FinancialStatements_BalanceSheet_GeneralPartnershipCapital_ThreeMonths = 1191

    FinancialStatements_BalanceSheet_GeneralPartnershipCapital_SixMonths = 1192

    FinancialStatements_BalanceSheet_GeneralPartnershipCapital_TwelveMonths = 1193

    FinancialStatements_BalanceSheet_Goodwill_OneMonth = 1194

    FinancialStatements_BalanceSheet_Goodwill_TwoMonths = 1195

    FinancialStatements_BalanceSheet_Goodwill_ThreeMonths = 1196

    FinancialStatements_BalanceSheet_Goodwill_SixMonths = 1197

    FinancialStatements_BalanceSheet_Goodwill_NineMonths = 1198

    FinancialStatements_BalanceSheet_Goodwill_TwelveMonths = 1199

    FinancialStatements_BalanceSheet_GoodwillAndOtherIntangibleAssets_OneMonth = 1200

    FinancialStatements_BalanceSheet_GoodwillAndOtherIntangibleAssets_TwoMonths = 1201

    FinancialStatements_BalanceSheet_GoodwillAndOtherIntangibleAssets_ThreeMonths = 1202

    FinancialStatements_BalanceSheet_GoodwillAndOtherIntangibleAssets_SixMonths = 1203

    FinancialStatements_BalanceSheet_GoodwillAndOtherIntangibleAssets_NineMonths = 1204

    FinancialStatements_BalanceSheet_GoodwillAndOtherIntangibleAssets_TwelveMonths = 1205

    FinancialStatements_BalanceSheet_GrossLoan_ThreeMonths = 1206

    FinancialStatements_BalanceSheet_GrossLoan_SixMonths = 1207

    FinancialStatements_BalanceSheet_GrossLoan_NineMonths = 1208

    FinancialStatements_BalanceSheet_GrossLoan_TwelveMonths = 1209

    FinancialStatements_BalanceSheet_GrossPPE_OneMonth = 1210

    FinancialStatements_BalanceSheet_GrossPPE_TwoMonths = 1211

    FinancialStatements_BalanceSheet_GrossPPE_ThreeMonths = 1212

    FinancialStatements_BalanceSheet_GrossPPE_SixMonths = 1213

    FinancialStatements_BalanceSheet_GrossPPE_NineMonths = 1214

    FinancialStatements_BalanceSheet_GrossPPE_TwelveMonths = 1215

    FinancialStatements_BalanceSheet_HeldToMaturitySecurities_ThreeMonths = 1216

    FinancialStatements_BalanceSheet_HeldToMaturitySecurities_SixMonths = 1217

    FinancialStatements_BalanceSheet_HeldToMaturitySecurities_NineMonths = 1218

    FinancialStatements_BalanceSheet_HeldToMaturitySecurities_TwelveMonths = 1219

    FinancialStatements_BalanceSheet_IncomeTaxPayable_OneMonth = 1220

    FinancialStatements_BalanceSheet_IncomeTaxPayable_ThreeMonths = 1221

    FinancialStatements_BalanceSheet_IncomeTaxPayable_SixMonths = 1222

    FinancialStatements_BalanceSheet_IncomeTaxPayable_NineMonths = 1223

    FinancialStatements_BalanceSheet_IncomeTaxPayable_TwelveMonths = 1224

    FinancialStatements_BalanceSheet_InterestBearingDepositsLiabilities_ThreeMonths = 1225

    FinancialStatements_BalanceSheet_InterestBearingDepositsLiabilities_SixMonths = 1226

    FinancialStatements_BalanceSheet_InterestBearingDepositsLiabilities_NineMonths = 1227

    FinancialStatements_BalanceSheet_InterestBearingDepositsLiabilities_TwelveMonths = 1228

    FinancialStatements_BalanceSheet_InterestPayable_OneMonth = 1229

    FinancialStatements_BalanceSheet_InterestPayable_TwoMonths = 1230

    FinancialStatements_BalanceSheet_InterestPayable_ThreeMonths = 1231

    FinancialStatements_BalanceSheet_InterestPayable_SixMonths = 1232

    FinancialStatements_BalanceSheet_InterestPayable_NineMonths = 1233

    FinancialStatements_BalanceSheet_InterestPayable_TwelveMonths = 1234

    FinancialStatements_BalanceSheet_InterestBearingDepositsAssets_ThreeMonths = 1235

    FinancialStatements_BalanceSheet_InterestBearingDepositsAssets_SixMonths = 1236

    FinancialStatements_BalanceSheet_InterestBearingDepositsAssets_NineMonths = 1237

    FinancialStatements_BalanceSheet_InterestBearingDepositsAssets_TwelveMonths = 1238

    FinancialStatements_BalanceSheet_Inventory_OneMonth = 1239

    FinancialStatements_BalanceSheet_Inventory_TwoMonths = 1240

    FinancialStatements_BalanceSheet_Inventory_ThreeMonths = 1241

    FinancialStatements_BalanceSheet_Inventory_SixMonths = 1242

    FinancialStatements_BalanceSheet_Inventory_NineMonths = 1243

    FinancialStatements_BalanceSheet_Inventory_TwelveMonths = 1244

    FinancialStatements_BalanceSheet_InvestmentsAndAdvances_OneMonth = 1245

    FinancialStatements_BalanceSheet_InvestmentsAndAdvances_TwoMonths = 1246

    FinancialStatements_BalanceSheet_InvestmentsAndAdvances_ThreeMonths = 1247

    FinancialStatements_BalanceSheet_InvestmentsAndAdvances_SixMonths = 1248

    FinancialStatements_BalanceSheet_InvestmentsAndAdvances_NineMonths = 1249

    FinancialStatements_BalanceSheet_InvestmentsAndAdvances_TwelveMonths = 1250

    FinancialStatements_BalanceSheet_LimitedPartnershipCapital_ThreeMonths = 1251

    FinancialStatements_BalanceSheet_LimitedPartnershipCapital_SixMonths = 1252

    FinancialStatements_BalanceSheet_LimitedPartnershipCapital_TwelveMonths = 1253

    FinancialStatements_BalanceSheet_LongTermDebt_OneMonth = 1254

    FinancialStatements_BalanceSheet_LongTermDebt_TwoMonths = 1255

    FinancialStatements_BalanceSheet_LongTermDebt_ThreeMonths = 1256

    FinancialStatements_BalanceSheet_LongTermDebt_SixMonths = 1257

    FinancialStatements_BalanceSheet_LongTermDebt_NineMonths = 1258

    FinancialStatements_BalanceSheet_LongTermDebt_TwelveMonths = 1259

    FinancialStatements_BalanceSheet_LongTermDebtAndCapitalLeaseObligation_OneMonth = 1260

    FinancialStatements_BalanceSheet_LongTermDebtAndCapitalLeaseObligation_TwoMonths = 1261

    FinancialStatements_BalanceSheet_LongTermDebtAndCapitalLeaseObligation_ThreeMonths = 1262

    FinancialStatements_BalanceSheet_LongTermDebtAndCapitalLeaseObligation_SixMonths = 1263

    FinancialStatements_BalanceSheet_LongTermDebtAndCapitalLeaseObligation_NineMonths = 1264

    FinancialStatements_BalanceSheet_LongTermDebtAndCapitalLeaseObligation_TwelveMonths = 1265

    FinancialStatements_BalanceSheet_LongTermInvestments_ThreeMonths = 1266

    FinancialStatements_BalanceSheet_LongTermInvestments_SixMonths = 1267

    FinancialStatements_BalanceSheet_LongTermInvestments_TwelveMonths = 1268

    FinancialStatements_BalanceSheet_LongTermCapitalLeaseObligation_OneMonth = 1269

    FinancialStatements_BalanceSheet_LongTermCapitalLeaseObligation_TwoMonths = 1270

    FinancialStatements_BalanceSheet_LongTermCapitalLeaseObligation_ThreeMonths = 1271

    FinancialStatements_BalanceSheet_LongTermCapitalLeaseObligation_SixMonths = 1272

    FinancialStatements_BalanceSheet_LongTermCapitalLeaseObligation_NineMonths = 1273

    FinancialStatements_BalanceSheet_LongTermCapitalLeaseObligation_TwelveMonths = 1274

    FinancialStatements_BalanceSheet_MinorityInterest_OneMonth = 1275

    FinancialStatements_BalanceSheet_MinorityInterest_TwoMonths = 1276

    FinancialStatements_BalanceSheet_MinorityInterest_ThreeMonths = 1277

    FinancialStatements_BalanceSheet_MinorityInterest_SixMonths = 1278

    FinancialStatements_BalanceSheet_MinorityInterest_NineMonths = 1279

    FinancialStatements_BalanceSheet_MinorityInterest_TwelveMonths = 1280

    FinancialStatements_BalanceSheet_MoneyMarketInvestments_ThreeMonths = 1281

    FinancialStatements_BalanceSheet_MoneyMarketInvestments_SixMonths = 1282

    FinancialStatements_BalanceSheet_MoneyMarketInvestments_NineMonths = 1283

    FinancialStatements_BalanceSheet_MoneyMarketInvestments_TwelveMonths = 1284

    FinancialStatements_BalanceSheet_NetLoan_ThreeMonths = 1285

    FinancialStatements_BalanceSheet_NetLoan_SixMonths = 1286

    FinancialStatements_BalanceSheet_NetLoan_NineMonths = 1287

    FinancialStatements_BalanceSheet_NetLoan_TwelveMonths = 1288

    FinancialStatements_BalanceSheet_NetPPE_OneMonth = 1289

    FinancialStatements_BalanceSheet_NetPPE_TwoMonths = 1290

    FinancialStatements_BalanceSheet_NetPPE_ThreeMonths = 1291

    FinancialStatements_BalanceSheet_NetPPE_SixMonths = 1292

    FinancialStatements_BalanceSheet_NetPPE_NineMonths = 1293

    FinancialStatements_BalanceSheet_NetPPE_TwelveMonths = 1294

    FinancialStatements_BalanceSheet_NonInterestBearingDeposits_ThreeMonths = 1295

    FinancialStatements_BalanceSheet_NonInterestBearingDeposits_SixMonths = 1296

    FinancialStatements_BalanceSheet_NonInterestBearingDeposits_NineMonths = 1297

    FinancialStatements_BalanceSheet_NonInterestBearingDeposits_TwelveMonths = 1298

    FinancialStatements_BalanceSheet_CurrentNotesPayable_OneMonth = 1299

    FinancialStatements_BalanceSheet_CurrentNotesPayable_TwoMonths = 1300

    FinancialStatements_BalanceSheet_CurrentNotesPayable_ThreeMonths = 1301

    FinancialStatements_BalanceSheet_CurrentNotesPayable_SixMonths = 1302

    FinancialStatements_BalanceSheet_CurrentNotesPayable_NineMonths = 1303

    FinancialStatements_BalanceSheet_CurrentNotesPayable_TwelveMonths = 1304

    FinancialStatements_BalanceSheet_NotesReceivable_ThreeMonths = 1305

    FinancialStatements_BalanceSheet_NotesReceivable_SixMonths = 1306

    FinancialStatements_BalanceSheet_NotesReceivable_TwelveMonths = 1307

    FinancialStatements_BalanceSheet_NonCurrentNoteReceivables_ThreeMonths = 1308

    FinancialStatements_BalanceSheet_NonCurrentNoteReceivables_SixMonths = 1309

    FinancialStatements_BalanceSheet_NonCurrentNoteReceivables_NineMonths = 1310

    FinancialStatements_BalanceSheet_NonCurrentNoteReceivables_TwelveMonths = 1311

    FinancialStatements_BalanceSheet_OtherCurrentLiabilities_OneMonth = 1312

    FinancialStatements_BalanceSheet_OtherCurrentLiabilities_TwoMonths = 1313

    FinancialStatements_BalanceSheet_OtherCurrentLiabilities_ThreeMonths = 1314

    FinancialStatements_BalanceSheet_OtherCurrentLiabilities_SixMonths = 1315

    FinancialStatements_BalanceSheet_OtherCurrentLiabilities_NineMonths = 1316

    FinancialStatements_BalanceSheet_OtherCurrentLiabilities_TwelveMonths = 1317

    FinancialStatements_BalanceSheet_OtherIntangibleAssets_OneMonth = 1318

    FinancialStatements_BalanceSheet_OtherIntangibleAssets_TwoMonths = 1319

    FinancialStatements_BalanceSheet_OtherIntangibleAssets_ThreeMonths = 1320

    FinancialStatements_BalanceSheet_OtherIntangibleAssets_SixMonths = 1321

    FinancialStatements_BalanceSheet_OtherIntangibleAssets_NineMonths = 1322

    FinancialStatements_BalanceSheet_OtherIntangibleAssets_TwelveMonths = 1323

    FinancialStatements_BalanceSheet_OtherShortTermInvestments_OneMonth = 1324

    FinancialStatements_BalanceSheet_OtherShortTermInvestments_ThreeMonths = 1325

    FinancialStatements_BalanceSheet_OtherShortTermInvestments_SixMonths = 1326

    FinancialStatements_BalanceSheet_OtherShortTermInvestments_NineMonths = 1327

    FinancialStatements_BalanceSheet_OtherShortTermInvestments_TwelveMonths = 1328

    FinancialStatements_BalanceSheet_Payables_OneMonth = 1329

    FinancialStatements_BalanceSheet_Payables_TwoMonths = 1330

    FinancialStatements_BalanceSheet_Payables_ThreeMonths = 1331

    FinancialStatements_BalanceSheet_Payables_SixMonths = 1332

    FinancialStatements_BalanceSheet_Payables_NineMonths = 1333

    FinancialStatements_BalanceSheet_Payables_TwelveMonths = 1334

    FinancialStatements_BalanceSheet_PayablesAndAccruedExpenses_OneMonth = 1335

    FinancialStatements_BalanceSheet_PayablesAndAccruedExpenses_TwoMonths = 1336

    FinancialStatements_BalanceSheet_PayablesAndAccruedExpenses_ThreeMonths = 1337

    FinancialStatements_BalanceSheet_PayablesAndAccruedExpenses_SixMonths = 1338

    FinancialStatements_BalanceSheet_PayablesAndAccruedExpenses_NineMonths = 1339

    FinancialStatements_BalanceSheet_PayablesAndAccruedExpenses_TwelveMonths = 1340

    FinancialStatements_BalanceSheet_PolicyReservesBenefits_ThreeMonths = 1341

    FinancialStatements_BalanceSheet_PolicyReservesBenefits_SixMonths = 1342

    FinancialStatements_BalanceSheet_PolicyReservesBenefits_NineMonths = 1343

    FinancialStatements_BalanceSheet_PolicyReservesBenefits_TwelveMonths = 1344

    FinancialStatements_BalanceSheet_PolicyholderFunds_ThreeMonths = 1345

    FinancialStatements_BalanceSheet_PolicyholderFunds_TwelveMonths = 1346

    FinancialStatements_BalanceSheet_PreferredSecuritiesOutsideStockEquity_OneMonth = 1347

    FinancialStatements_BalanceSheet_PreferredSecuritiesOutsideStockEquity_ThreeMonths = 1348

    FinancialStatements_BalanceSheet_PreferredSecuritiesOutsideStockEquity_SixMonths = 1349

    FinancialStatements_BalanceSheet_PreferredSecuritiesOutsideStockEquity_NineMonths = 1350

    FinancialStatements_BalanceSheet_PreferredSecuritiesOutsideStockEquity_TwelveMonths = 1351

    FinancialStatements_BalanceSheet_PreferredStock_OneMonth = 1352

    FinancialStatements_BalanceSheet_PreferredStock_TwoMonths = 1353

    FinancialStatements_BalanceSheet_PreferredStock_ThreeMonths = 1354

    FinancialStatements_BalanceSheet_PreferredStock_SixMonths = 1355

    FinancialStatements_BalanceSheet_PreferredStock_NineMonths = 1356

    FinancialStatements_BalanceSheet_PreferredStock_TwelveMonths = 1357

    FinancialStatements_BalanceSheet_PrepaidAssets_OneMonth = 1358

    FinancialStatements_BalanceSheet_PrepaidAssets_TwoMonths = 1359

    FinancialStatements_BalanceSheet_PrepaidAssets_ThreeMonths = 1360

    FinancialStatements_BalanceSheet_PrepaidAssets_SixMonths = 1361

    FinancialStatements_BalanceSheet_PrepaidAssets_NineMonths = 1362

    FinancialStatements_BalanceSheet_PrepaidAssets_TwelveMonths = 1363

    FinancialStatements_BalanceSheet_NonCurrentPrepaidAssets_OneMonth = 1364

    FinancialStatements_BalanceSheet_NonCurrentPrepaidAssets_ThreeMonths = 1365

    FinancialStatements_BalanceSheet_NonCurrentPrepaidAssets_SixMonths = 1366

    FinancialStatements_BalanceSheet_NonCurrentPrepaidAssets_TwelveMonths = 1367

    FinancialStatements_BalanceSheet_Receivables_OneMonth = 1368

    FinancialStatements_BalanceSheet_Receivables_TwoMonths = 1369

    FinancialStatements_BalanceSheet_Receivables_ThreeMonths = 1370

    FinancialStatements_BalanceSheet_Receivables_SixMonths = 1371

    FinancialStatements_BalanceSheet_Receivables_NineMonths = 1372

    FinancialStatements_BalanceSheet_Receivables_TwelveMonths = 1373

    FinancialStatements_BalanceSheet_ReinsuranceRecoverable_ThreeMonths = 1374

    FinancialStatements_BalanceSheet_ReinsuranceRecoverable_TwelveMonths = 1375

    FinancialStatements_BalanceSheet_RetainedEarnings_OneMonth = 1376

    FinancialStatements_BalanceSheet_RetainedEarnings_TwoMonths = 1377

    FinancialStatements_BalanceSheet_RetainedEarnings_ThreeMonths = 1378

    FinancialStatements_BalanceSheet_RetainedEarnings_SixMonths = 1379

    FinancialStatements_BalanceSheet_RetainedEarnings_NineMonths = 1380

    FinancialStatements_BalanceSheet_RetainedEarnings_TwelveMonths = 1381

    FinancialStatements_BalanceSheet_SecuritiesLendingCollateral_ThreeMonths = 1382

    FinancialStatements_BalanceSheet_SecuritiesLendingCollateral_TwelveMonths = 1383

    FinancialStatements_BalanceSheet_SecurityAgreeToBeResell_ThreeMonths = 1384

    FinancialStatements_BalanceSheet_SecurityAgreeToBeResell_TwelveMonths = 1385

    FinancialStatements_BalanceSheet_SecuritySoldNotYetRepurchased_ThreeMonths = 1386

    FinancialStatements_BalanceSheet_SecuritySoldNotYetRepurchased_TwelveMonths = 1387

    FinancialStatements_BalanceSheet_SeparateAccountAssets_ThreeMonths = 1388

    FinancialStatements_BalanceSheet_SeparateAccountAssets_TwelveMonths = 1389

    FinancialStatements_BalanceSheet_SeparateAccountBusiness_ThreeMonths = 1390

    FinancialStatements_BalanceSheet_SeparateAccountBusiness_TwelveMonths = 1391

    FinancialStatements_BalanceSheet_ShortTermInvestmentsAvailableForSale_ThreeMonths = 1392

    FinancialStatements_BalanceSheet_ShortTermInvestmentsAvailableForSale_TwelveMonths = 1393

    FinancialStatements_BalanceSheet_ShortTermInvestmentsHeldToMaturity_ThreeMonths = 1394

    FinancialStatements_BalanceSheet_ShortTermInvestmentsHeldToMaturity_TwelveMonths = 1395

    FinancialStatements_BalanceSheet_ShortTermInvestmentsTrading_ThreeMonths = 1396

    FinancialStatements_BalanceSheet_ShortTermInvestmentsTrading_TwelveMonths = 1397

    FinancialStatements_BalanceSheet_StockholdersEquity_OneMonth = 1398

    FinancialStatements_BalanceSheet_StockholdersEquity_TwoMonths = 1399

    FinancialStatements_BalanceSheet_StockholdersEquity_ThreeMonths = 1400

    FinancialStatements_BalanceSheet_StockholdersEquity_SixMonths = 1401

    FinancialStatements_BalanceSheet_StockholdersEquity_NineMonths = 1402

    FinancialStatements_BalanceSheet_StockholdersEquity_TwelveMonths = 1403

    FinancialStatements_BalanceSheet_TotalTaxPayable_OneMonth = 1404

    FinancialStatements_BalanceSheet_TotalTaxPayable_TwoMonths = 1405

    FinancialStatements_BalanceSheet_TotalTaxPayable_ThreeMonths = 1406

    FinancialStatements_BalanceSheet_TotalTaxPayable_SixMonths = 1407

    FinancialStatements_BalanceSheet_TotalTaxPayable_NineMonths = 1408

    FinancialStatements_BalanceSheet_TotalTaxPayable_TwelveMonths = 1409

    FinancialStatements_BalanceSheet_TotalAssets_OneMonth = 1410

    FinancialStatements_BalanceSheet_TotalAssets_TwoMonths = 1411

    FinancialStatements_BalanceSheet_TotalAssets_ThreeMonths = 1412

    FinancialStatements_BalanceSheet_TotalAssets_SixMonths = 1413

    FinancialStatements_BalanceSheet_TotalAssets_NineMonths = 1414

    FinancialStatements_BalanceSheet_TotalAssets_TwelveMonths = 1415

    FinancialStatements_BalanceSheet_TotalDeposits_ThreeMonths = 1416

    FinancialStatements_BalanceSheet_TotalDeposits_SixMonths = 1417

    FinancialStatements_BalanceSheet_TotalDeposits_NineMonths = 1418

    FinancialStatements_BalanceSheet_TotalDeposits_TwelveMonths = 1419

    FinancialStatements_BalanceSheet_TotalInvestments_ThreeMonths = 1420

    FinancialStatements_BalanceSheet_TotalInvestments_SixMonths = 1421

    FinancialStatements_BalanceSheet_TotalInvestments_TwelveMonths = 1422

    FinancialStatements_BalanceSheet_TotalNonCurrentAssets_OneMonth = 1423

    FinancialStatements_BalanceSheet_TotalNonCurrentAssets_TwoMonths = 1424

    FinancialStatements_BalanceSheet_TotalNonCurrentAssets_ThreeMonths = 1425

    FinancialStatements_BalanceSheet_TotalNonCurrentAssets_SixMonths = 1426

    FinancialStatements_BalanceSheet_TotalNonCurrentAssets_NineMonths = 1427

    FinancialStatements_BalanceSheet_TotalNonCurrentAssets_TwelveMonths = 1428

    FinancialStatements_BalanceSheet_TotalPartnershipCapital_ThreeMonths = 1429

    FinancialStatements_BalanceSheet_TotalPartnershipCapital_SixMonths = 1430

    FinancialStatements_BalanceSheet_TotalPartnershipCapital_TwelveMonths = 1431

    FinancialStatements_BalanceSheet_TradingAssets_ThreeMonths = 1432

    FinancialStatements_BalanceSheet_TradingAssets_TwelveMonths = 1433

    FinancialStatements_BalanceSheet_TradingLiabilities_ThreeMonths = 1434

    FinancialStatements_BalanceSheet_TradingLiabilities_TwelveMonths = 1435

    FinancialStatements_BalanceSheet_TradingSecurities_ThreeMonths = 1436

    FinancialStatements_BalanceSheet_TradingSecurities_SixMonths = 1437

    FinancialStatements_BalanceSheet_TradingSecurities_TwelveMonths = 1438

    FinancialStatements_BalanceSheet_TreasuryStock_OneMonth = 1439

    FinancialStatements_BalanceSheet_TreasuryStock_TwoMonths = 1440

    FinancialStatements_BalanceSheet_TreasuryStock_ThreeMonths = 1441

    FinancialStatements_BalanceSheet_TreasuryStock_SixMonths = 1442

    FinancialStatements_BalanceSheet_TreasuryStock_NineMonths = 1443

    FinancialStatements_BalanceSheet_TreasuryStock_TwelveMonths = 1444

    FinancialStatements_BalanceSheet_UnearnedIncome_ThreeMonths = 1445

    FinancialStatements_BalanceSheet_UnearnedIncome_SixMonths = 1446

    FinancialStatements_BalanceSheet_UnearnedIncome_NineMonths = 1447

    FinancialStatements_BalanceSheet_UnearnedIncome_TwelveMonths = 1448

    FinancialStatements_BalanceSheet_UnearnedPremiums_ThreeMonths = 1449

    FinancialStatements_BalanceSheet_UnearnedPremiums_SixMonths = 1450

    FinancialStatements_BalanceSheet_UnearnedPremiums_NineMonths = 1451

    FinancialStatements_BalanceSheet_UnearnedPremiums_TwelveMonths = 1452

    FinancialStatements_BalanceSheet_UnpaidLossAndLossReserve_ThreeMonths = 1453

    FinancialStatements_BalanceSheet_UnpaidLossAndLossReserve_SixMonths = 1454

    FinancialStatements_BalanceSheet_UnpaidLossAndLossReserve_NineMonths = 1455

    FinancialStatements_BalanceSheet_UnpaidLossAndLossReserve_TwelveMonths = 1456

    FinancialStatements_BalanceSheet_InvestedCapital_OneMonth = 1457

    FinancialStatements_BalanceSheet_InvestedCapital_TwoMonths = 1458

    FinancialStatements_BalanceSheet_InvestedCapital_ThreeMonths = 1459

    FinancialStatements_BalanceSheet_InvestedCapital_SixMonths = 1460

    FinancialStatements_BalanceSheet_InvestedCapital_NineMonths = 1461

    FinancialStatements_BalanceSheet_InvestedCapital_TwelveMonths = 1462

    FinancialStatements_BalanceSheet_CurrentDeferredAssets_OneMonth = 1463

    FinancialStatements_BalanceSheet_CurrentDeferredAssets_TwoMonths = 1464

    FinancialStatements_BalanceSheet_CurrentDeferredAssets_ThreeMonths = 1465

    FinancialStatements_BalanceSheet_CurrentDeferredAssets_SixMonths = 1466

    FinancialStatements_BalanceSheet_CurrentDeferredAssets_NineMonths = 1467

    FinancialStatements_BalanceSheet_CurrentDeferredAssets_TwelveMonths = 1468

    FinancialStatements_BalanceSheet_NonCurrentDeferredAssets_OneMonth = 1469

    FinancialStatements_BalanceSheet_NonCurrentDeferredAssets_TwoMonths = 1470

    FinancialStatements_BalanceSheet_NonCurrentDeferredAssets_ThreeMonths = 1471

    FinancialStatements_BalanceSheet_NonCurrentDeferredAssets_SixMonths = 1472

    FinancialStatements_BalanceSheet_NonCurrentDeferredAssets_NineMonths = 1473

    FinancialStatements_BalanceSheet_NonCurrentDeferredAssets_TwelveMonths = 1474

    FinancialStatements_BalanceSheet_SecuritiesAndInvestments_TwoMonths = 1475

    FinancialStatements_BalanceSheet_SecuritiesAndInvestments_ThreeMonths = 1476

    FinancialStatements_BalanceSheet_SecuritiesAndInvestments_SixMonths = 1477

    FinancialStatements_BalanceSheet_SecuritiesAndInvestments_NineMonths = 1478

    FinancialStatements_BalanceSheet_SecuritiesAndInvestments_TwelveMonths = 1479

    FinancialStatements_BalanceSheet_TotalLiabilitiesNetMinorityInterest_OneMonth = 1480

    FinancialStatements_BalanceSheet_TotalLiabilitiesNetMinorityInterest_TwoMonths = 1481

    FinancialStatements_BalanceSheet_TotalLiabilitiesNetMinorityInterest_ThreeMonths = 1482

    FinancialStatements_BalanceSheet_TotalLiabilitiesNetMinorityInterest_SixMonths = 1483

    FinancialStatements_BalanceSheet_TotalLiabilitiesNetMinorityInterest_NineMonths = 1484

    FinancialStatements_BalanceSheet_TotalLiabilitiesNetMinorityInterest_TwelveMonths = 1485

    FinancialStatements_BalanceSheet_TotalNonCurrentLiabilitiesNetMinorityInterest_OneMonth = 1486

    FinancialStatements_BalanceSheet_TotalNonCurrentLiabilitiesNetMinorityInterest_TwoMonths = 1487

    FinancialStatements_BalanceSheet_TotalNonCurrentLiabilitiesNetMinorityInterest_ThreeMonths = 1488

    FinancialStatements_BalanceSheet_TotalNonCurrentLiabilitiesNetMinorityInterest_SixMonths = 1489

    FinancialStatements_BalanceSheet_TotalNonCurrentLiabilitiesNetMinorityInterest_NineMonths = 1490

    FinancialStatements_BalanceSheet_TotalNonCurrentLiabilitiesNetMinorityInterest_TwelveMonths = 1491

    FinancialStatements_BalanceSheet_TotalEquityGrossMinorityInterest_OneMonth = 1492

    FinancialStatements_BalanceSheet_TotalEquityGrossMinorityInterest_TwoMonths = 1493

    FinancialStatements_BalanceSheet_TotalEquityGrossMinorityInterest_ThreeMonths = 1494

    FinancialStatements_BalanceSheet_TotalEquityGrossMinorityInterest_SixMonths = 1495

    FinancialStatements_BalanceSheet_TotalEquityGrossMinorityInterest_NineMonths = 1496

    FinancialStatements_BalanceSheet_TotalEquityGrossMinorityInterest_TwelveMonths = 1497

    FinancialStatements_BalanceSheet_GrossAccountsReceivable_ThreeMonths = 1498

    FinancialStatements_BalanceSheet_GrossAccountsReceivable_TwelveMonths = 1499

    FinancialStatements_BalanceSheet_NonCurrentAccountsReceivable_ThreeMonths = 1500

    FinancialStatements_BalanceSheet_NonCurrentAccountsReceivable_SixMonths = 1501

    FinancialStatements_BalanceSheet_NonCurrentAccountsReceivable_NineMonths = 1502

    FinancialStatements_BalanceSheet_NonCurrentAccountsReceivable_TwelveMonths = 1503

    FinancialStatements_BalanceSheet_AccruedInterestReceivable_TwoMonths = 1504

    FinancialStatements_BalanceSheet_AccruedInterestReceivable_ThreeMonths = 1505

    FinancialStatements_BalanceSheet_AccruedInterestReceivable_SixMonths = 1506

    FinancialStatements_BalanceSheet_AccruedInterestReceivable_NineMonths = 1507

    FinancialStatements_BalanceSheet_AccruedInterestReceivable_TwelveMonths = 1508

    FinancialStatements_BalanceSheet_AdvanceFromFederalHomeLoanBanks_ThreeMonths = 1509

    FinancialStatements_BalanceSheet_AdvanceFromFederalHomeLoanBanks_SixMonths = 1510

    FinancialStatements_BalanceSheet_AdvanceFromFederalHomeLoanBanks_NineMonths = 1511

    FinancialStatements_BalanceSheet_AdvanceFromFederalHomeLoanBanks_TwelveMonths = 1512

    FinancialStatements_BalanceSheet_AllowanceForDoubtfulAccountsReceivable_ThreeMonths = 1513

    FinancialStatements_BalanceSheet_AllowanceForDoubtfulAccountsReceivable_TwelveMonths = 1514

    FinancialStatements_BalanceSheet_AllowanceForNotesReceivable_ThreeMonths = 1515

    FinancialStatements_BalanceSheet_AllowanceForNotesReceivable_TwelveMonths = 1516

    FinancialStatements_BalanceSheet_AssetsHeldForSale_ThreeMonths = 1517

    FinancialStatements_BalanceSheet_AssetsHeldForSale_TwelveMonths = 1518

    FinancialStatements_BalanceSheet_AssetsOfDiscontinuedOperations_ThreeMonths = 1519

    FinancialStatements_BalanceSheet_AssetsOfDiscontinuedOperations_TwelveMonths = 1520

    FinancialStatements_BalanceSheet_BankIndebtedness_ThreeMonths = 1521

    FinancialStatements_BalanceSheet_BankIndebtedness_TwelveMonths = 1522

    FinancialStatements_BalanceSheet_BankOwnedLifeInsurance_ThreeMonths = 1523

    FinancialStatements_BalanceSheet_BankOwnedLifeInsurance_SixMonths = 1524

    FinancialStatements_BalanceSheet_BankOwnedLifeInsurance_NineMonths = 1525

    FinancialStatements_BalanceSheet_BankOwnedLifeInsurance_TwelveMonths = 1526

    FinancialStatements_BalanceSheet_SecurityBorrowed_ThreeMonths = 1527

    FinancialStatements_BalanceSheet_SecurityBorrowed_TwelveMonths = 1528

    FinancialStatements_BalanceSheet_BuildingsAndImprovements_OneMonth = 1529

    FinancialStatements_BalanceSheet_BuildingsAndImprovements_TwoMonths = 1530

    FinancialStatements_BalanceSheet_BuildingsAndImprovements_ThreeMonths = 1531

    FinancialStatements_BalanceSheet_BuildingsAndImprovements_SixMonths = 1532

    FinancialStatements_BalanceSheet_BuildingsAndImprovements_NineMonths = 1533

    FinancialStatements_BalanceSheet_BuildingsAndImprovements_TwelveMonths = 1534

    FinancialStatements_BalanceSheet_CommercialLoan_ThreeMonths = 1535

    FinancialStatements_BalanceSheet_CommercialLoan_SixMonths = 1536

    FinancialStatements_BalanceSheet_CommercialLoan_NineMonths = 1537

    FinancialStatements_BalanceSheet_CommercialLoan_TwelveMonths = 1538

    FinancialStatements_BalanceSheet_CommercialPaper_ThreeMonths = 1539

    FinancialStatements_BalanceSheet_CommercialPaper_TwelveMonths = 1540

    FinancialStatements_BalanceSheet_CommonStockEquity_OneMonth = 1541

    FinancialStatements_BalanceSheet_CommonStockEquity_TwoMonths = 1542

    FinancialStatements_BalanceSheet_CommonStockEquity_ThreeMonths = 1543

    FinancialStatements_BalanceSheet_CommonStockEquity_SixMonths = 1544

    FinancialStatements_BalanceSheet_CommonStockEquity_NineMonths = 1545

    FinancialStatements_BalanceSheet_CommonStockEquity_TwelveMonths = 1546

    FinancialStatements_BalanceSheet_ConstructionInProgress_OneMonth = 1547

    FinancialStatements_BalanceSheet_ConstructionInProgress_TwoMonths = 1548

    FinancialStatements_BalanceSheet_ConstructionInProgress_ThreeMonths = 1549

    FinancialStatements_BalanceSheet_ConstructionInProgress_SixMonths = 1550

    FinancialStatements_BalanceSheet_ConstructionInProgress_NineMonths = 1551

    FinancialStatements_BalanceSheet_ConstructionInProgress_TwelveMonths = 1552

    FinancialStatements_BalanceSheet_ConsumerLoan_ThreeMonths = 1553

    FinancialStatements_BalanceSheet_ConsumerLoan_SixMonths = 1554

    FinancialStatements_BalanceSheet_ConsumerLoan_NineMonths = 1555

    FinancialStatements_BalanceSheet_ConsumerLoan_TwelveMonths = 1556

    FinancialStatements_BalanceSheet_MinimumPensionLiabilities_ThreeMonths = 1557

    FinancialStatements_BalanceSheet_MinimumPensionLiabilities_TwelveMonths = 1558

    FinancialStatements_BalanceSheet_CustomerAcceptances_ThreeMonths = 1559

    FinancialStatements_BalanceSheet_CustomerAcceptances_TwelveMonths = 1560

    FinancialStatements_BalanceSheet_DefinedPensionBenefit_ThreeMonths = 1561

    FinancialStatements_BalanceSheet_DefinedPensionBenefit_SixMonths = 1562

    FinancialStatements_BalanceSheet_DefinedPensionBenefit_TwelveMonths = 1563

    FinancialStatements_BalanceSheet_DerivativeProductLiabilities_OneMonth = 1564

    FinancialStatements_BalanceSheet_DerivativeProductLiabilities_TwoMonths = 1565

    FinancialStatements_BalanceSheet_DerivativeProductLiabilities_ThreeMonths = 1566

    FinancialStatements_BalanceSheet_DerivativeProductLiabilities_SixMonths = 1567

    FinancialStatements_BalanceSheet_DerivativeProductLiabilities_NineMonths = 1568

    FinancialStatements_BalanceSheet_DerivativeProductLiabilities_TwelveMonths = 1569

    FinancialStatements_BalanceSheet_DerivativeAssets_ThreeMonths = 1570

    FinancialStatements_BalanceSheet_DerivativeAssets_SixMonths = 1571

    FinancialStatements_BalanceSheet_DerivativeAssets_TwelveMonths = 1572

    FinancialStatements_BalanceSheet_DividendsPayable_OneMonth = 1573

    FinancialStatements_BalanceSheet_DividendsPayable_TwoMonths = 1574

    FinancialStatements_BalanceSheet_DividendsPayable_ThreeMonths = 1575

    FinancialStatements_BalanceSheet_DividendsPayable_NineMonths = 1576

    FinancialStatements_BalanceSheet_DividendsPayable_TwelveMonths = 1577

    FinancialStatements_BalanceSheet_EmployeeBenefits_TwoMonths = 1578

    FinancialStatements_BalanceSheet_EmployeeBenefits_ThreeMonths = 1579

    FinancialStatements_BalanceSheet_EmployeeBenefits_SixMonths = 1580

    FinancialStatements_BalanceSheet_EmployeeBenefits_NineMonths = 1581

    FinancialStatements_BalanceSheet_EmployeeBenefits_TwelveMonths = 1582

    FinancialStatements_BalanceSheet_FederalFundsPurchased_ThreeMonths = 1583

    FinancialStatements_BalanceSheet_FederalFundsPurchased_TwelveMonths = 1584

    FinancialStatements_BalanceSheet_FederalFundsSold_ThreeMonths = 1585

    FinancialStatements_BalanceSheet_FederalFundsSold_SixMonths = 1586

    FinancialStatements_BalanceSheet_FederalFundsSold_TwelveMonths = 1587

    FinancialStatements_BalanceSheet_FederalHomeLoanBankStock_ThreeMonths = 1588

    FinancialStatements_BalanceSheet_FederalHomeLoanBankStock_SixMonths = 1589

    FinancialStatements_BalanceSheet_FederalHomeLoanBankStock_NineMonths = 1590

    FinancialStatements_BalanceSheet_FederalHomeLoanBankStock_TwelveMonths = 1591

    FinancialStatements_BalanceSheet_FinancialAssets_ThreeMonths = 1592

    FinancialStatements_BalanceSheet_FinancialAssets_NineMonths = 1593

    FinancialStatements_BalanceSheet_FinancialAssets_TwelveMonths = 1594

    FinancialStatements_BalanceSheet_FinancialInstrumentsSoldUnderAgreementsToRepurchase_ThreeMonths = 1595

    FinancialStatements_BalanceSheet_FinancialInstrumentsSoldUnderAgreementsToRepurchase_SixMonths = 1596

    FinancialStatements_BalanceSheet_FinancialInstrumentsSoldUnderAgreementsToRepurchase_TwelveMonths = 1597

    FinancialStatements_BalanceSheet_FinishedGoods_OneMonth = 1598

    FinancialStatements_BalanceSheet_FinishedGoods_TwoMonths = 1599

    FinancialStatements_BalanceSheet_FinishedGoods_ThreeMonths = 1600

    FinancialStatements_BalanceSheet_FinishedGoods_SixMonths = 1601

    FinancialStatements_BalanceSheet_FinishedGoods_NineMonths = 1602

    FinancialStatements_BalanceSheet_FinishedGoods_TwelveMonths = 1603

    FinancialStatements_BalanceSheet_FlightFleetVehicleAndRelatedEquipments_ThreeMonths = 1604

    FinancialStatements_BalanceSheet_FlightFleetVehicleAndRelatedEquipments_SixMonths = 1605

    FinancialStatements_BalanceSheet_FlightFleetVehicleAndRelatedEquipments_TwelveMonths = 1606

    FinancialStatements_BalanceSheet_ForeclosedAssets_ThreeMonths = 1607

    FinancialStatements_BalanceSheet_ForeclosedAssets_NineMonths = 1608

    FinancialStatements_BalanceSheet_ForeclosedAssets_TwelveMonths = 1609

    FinancialStatements_BalanceSheet_ForeignCurrencyTranslationAdjustments_TwoMonths = 1610

    FinancialStatements_BalanceSheet_ForeignCurrencyTranslationAdjustments_ThreeMonths = 1611

    FinancialStatements_BalanceSheet_ForeignCurrencyTranslationAdjustments_SixMonths = 1612

    FinancialStatements_BalanceSheet_ForeignCurrencyTranslationAdjustments_NineMonths = 1613

    FinancialStatements_BalanceSheet_ForeignCurrencyTranslationAdjustments_TwelveMonths = 1614

    FinancialStatements_BalanceSheet_InventoriesAdjustmentsAllowances_ThreeMonths = 1615

    FinancialStatements_BalanceSheet_InventoriesAdjustmentsAllowances_SixMonths = 1616

    FinancialStatements_BalanceSheet_InventoriesAdjustmentsAllowances_NineMonths = 1617

    FinancialStatements_BalanceSheet_InventoriesAdjustmentsAllowances_TwelveMonths = 1618

    FinancialStatements_BalanceSheet_InvestmentsInOtherVenturesUnderEquityMethod_ThreeMonths = 1619

    FinancialStatements_BalanceSheet_InvestmentsInOtherVenturesUnderEquityMethod_TwelveMonths = 1620

    FinancialStatements_BalanceSheet_LandAndImprovements_OneMonth = 1621

    FinancialStatements_BalanceSheet_LandAndImprovements_TwoMonths = 1622

    FinancialStatements_BalanceSheet_LandAndImprovements_ThreeMonths = 1623

    FinancialStatements_BalanceSheet_LandAndImprovements_SixMonths = 1624

    FinancialStatements_BalanceSheet_LandAndImprovements_NineMonths = 1625

    FinancialStatements_BalanceSheet_LandAndImprovements_TwelveMonths = 1626

    FinancialStatements_BalanceSheet_Leases_OneMonth = 1627

    FinancialStatements_BalanceSheet_Leases_TwoMonths = 1628

    FinancialStatements_BalanceSheet_Leases_ThreeMonths = 1629

    FinancialStatements_BalanceSheet_Leases_SixMonths = 1630

    FinancialStatements_BalanceSheet_Leases_NineMonths = 1631

    FinancialStatements_BalanceSheet_Leases_TwelveMonths = 1632

    FinancialStatements_BalanceSheet_LiabilitiesOfDiscontinuedOperations_ThreeMonths = 1633

    FinancialStatements_BalanceSheet_LiabilitiesOfDiscontinuedOperations_TwelveMonths = 1634

    FinancialStatements_BalanceSheet_LineOfCredit_OneMonth = 1635

    FinancialStatements_BalanceSheet_LineOfCredit_ThreeMonths = 1636

    FinancialStatements_BalanceSheet_LineOfCredit_NineMonths = 1637

    FinancialStatements_BalanceSheet_LineOfCredit_TwelveMonths = 1638

    FinancialStatements_BalanceSheet_LoansHeldForSale_ThreeMonths = 1639

    FinancialStatements_BalanceSheet_LoansHeldForSale_SixMonths = 1640

    FinancialStatements_BalanceSheet_LoansHeldForSale_NineMonths = 1641

    FinancialStatements_BalanceSheet_LoansHeldForSale_TwelveMonths = 1642

    FinancialStatements_BalanceSheet_LoansReceivable_TwoMonths = 1643

    FinancialStatements_BalanceSheet_LoansReceivable_ThreeMonths = 1644

    FinancialStatements_BalanceSheet_LoansReceivable_SixMonths = 1645

    FinancialStatements_BalanceSheet_LoansReceivable_NineMonths = 1646

    FinancialStatements_BalanceSheet_LoansReceivable_TwelveMonths = 1647

    FinancialStatements_BalanceSheet_MachineryFurnitureEquipment_OneMonth = 1648

    FinancialStatements_BalanceSheet_MachineryFurnitureEquipment_TwoMonths = 1649

    FinancialStatements_BalanceSheet_MachineryFurnitureEquipment_ThreeMonths = 1650

    FinancialStatements_BalanceSheet_MachineryFurnitureEquipment_SixMonths = 1651

    FinancialStatements_BalanceSheet_MachineryFurnitureEquipment_NineMonths = 1652

    FinancialStatements_BalanceSheet_MachineryFurnitureEquipment_TwelveMonths = 1653

    FinancialStatements_BalanceSheet_MaterialsAndSupplies_ThreeMonths = 1654

    FinancialStatements_BalanceSheet_MaterialsAndSupplies_TwelveMonths = 1655

    FinancialStatements_BalanceSheet_MineralProperties_ThreeMonths = 1656

    FinancialStatements_BalanceSheet_MineralProperties_SixMonths = 1657

    FinancialStatements_BalanceSheet_MineralProperties_NineMonths = 1658

    FinancialStatements_BalanceSheet_MineralProperties_TwelveMonths = 1659

    FinancialStatements_BalanceSheet_MortgageLoan_ThreeMonths = 1660

    FinancialStatements_BalanceSheet_MortgageLoan_SixMonths = 1661

    FinancialStatements_BalanceSheet_MortgageLoan_NineMonths = 1662

    FinancialStatements_BalanceSheet_MortgageLoan_TwelveMonths = 1663

    FinancialStatements_BalanceSheet_MortgageAndConsumerloans_ThreeMonths = 1664

    FinancialStatements_BalanceSheet_MortgageAndConsumerloans_TwelveMonths = 1665

    FinancialStatements_BalanceSheet_GrossNotesReceivable_ThreeMonths = 1666

    FinancialStatements_BalanceSheet_GrossNotesReceivable_TwelveMonths = 1667

    FinancialStatements_BalanceSheet_OtherAssets_TwoMonths = 1668

    FinancialStatements_BalanceSheet_OtherAssets_ThreeMonths = 1669

    FinancialStatements_BalanceSheet_OtherAssets_SixMonths = 1670

    FinancialStatements_BalanceSheet_OtherAssets_NineMonths = 1671

    FinancialStatements_BalanceSheet_OtherAssets_TwelveMonths = 1672

    FinancialStatements_BalanceSheet_OtherCapitalStock_OneMonth = 1673

    FinancialStatements_BalanceSheet_OtherCapitalStock_ThreeMonths = 1674

    FinancialStatements_BalanceSheet_OtherCapitalStock_NineMonths = 1675

    FinancialStatements_BalanceSheet_OtherCapitalStock_TwelveMonths = 1676

    FinancialStatements_BalanceSheet_OtherCurrentAssets_OneMonth = 1677

    FinancialStatements_BalanceSheet_OtherCurrentAssets_TwoMonths = 1678

    FinancialStatements_BalanceSheet_OtherCurrentAssets_ThreeMonths = 1679

    FinancialStatements_BalanceSheet_OtherCurrentAssets_SixMonths = 1680

    FinancialStatements_BalanceSheet_OtherCurrentAssets_NineMonths = 1681

    FinancialStatements_BalanceSheet_OtherCurrentAssets_TwelveMonths = 1682

    FinancialStatements_BalanceSheet_OtherCurrentBorrowings_ThreeMonths = 1683

    FinancialStatements_BalanceSheet_OtherCurrentBorrowings_SixMonths = 1684

    FinancialStatements_BalanceSheet_OtherCurrentBorrowings_NineMonths = 1685

    FinancialStatements_BalanceSheet_OtherCurrentBorrowings_TwelveMonths = 1686

    FinancialStatements_BalanceSheet_OtherEquityAdjustments_TwoMonths = 1687

    FinancialStatements_BalanceSheet_OtherEquityAdjustments_ThreeMonths = 1688

    FinancialStatements_BalanceSheet_OtherEquityAdjustments_SixMonths = 1689

    FinancialStatements_BalanceSheet_OtherEquityAdjustments_TwelveMonths = 1690

    FinancialStatements_BalanceSheet_OtherInventories_OneMonth = 1691

    FinancialStatements_BalanceSheet_OtherInventories_ThreeMonths = 1692

    FinancialStatements_BalanceSheet_OtherInventories_SixMonths = 1693

    FinancialStatements_BalanceSheet_OtherInventories_NineMonths = 1694

    FinancialStatements_BalanceSheet_OtherInventories_TwelveMonths = 1695

    FinancialStatements_BalanceSheet_OtherInvestedAssets_ThreeMonths = 1696

    FinancialStatements_BalanceSheet_OtherInvestedAssets_TwelveMonths = 1697

    FinancialStatements_BalanceSheet_OtherNonCurrentAssets_OneMonth = 1698

    FinancialStatements_BalanceSheet_OtherNonCurrentAssets_TwoMonths = 1699

    FinancialStatements_BalanceSheet_OtherNonCurrentAssets_ThreeMonths = 1700

    FinancialStatements_BalanceSheet_OtherNonCurrentAssets_SixMonths = 1701

    FinancialStatements_BalanceSheet_OtherNonCurrentAssets_NineMonths = 1702

    FinancialStatements_BalanceSheet_OtherNonCurrentAssets_TwelveMonths = 1703

    FinancialStatements_BalanceSheet_OtherProperties_OneMonth = 1704

    FinancialStatements_BalanceSheet_OtherProperties_ThreeMonths = 1705

    FinancialStatements_BalanceSheet_OtherProperties_SixMonths = 1706

    FinancialStatements_BalanceSheet_OtherProperties_NineMonths = 1707

    FinancialStatements_BalanceSheet_OtherProperties_TwelveMonths = 1708

    FinancialStatements_BalanceSheet_OtherRealEstateOwned_ThreeMonths = 1709

    FinancialStatements_BalanceSheet_OtherRealEstateOwned_SixMonths = 1710

    FinancialStatements_BalanceSheet_OtherRealEstateOwned_NineMonths = 1711

    FinancialStatements_BalanceSheet_OtherRealEstateOwned_TwelveMonths = 1712

    FinancialStatements_BalanceSheet_OtherReceivables_TwoMonths = 1713

    FinancialStatements_BalanceSheet_OtherReceivables_ThreeMonths = 1714

    FinancialStatements_BalanceSheet_OtherReceivables_SixMonths = 1715

    FinancialStatements_BalanceSheet_OtherReceivables_NineMonths = 1716

    FinancialStatements_BalanceSheet_OtherReceivables_TwelveMonths = 1717

    FinancialStatements_BalanceSheet_NonCurrentPensionAndOtherPostretirementBenefitPlans_TwoMonths = 1718

    FinancialStatements_BalanceSheet_NonCurrentPensionAndOtherPostretirementBenefitPlans_ThreeMonths = 1719

    FinancialStatements_BalanceSheet_NonCurrentPensionAndOtherPostretirementBenefitPlans_SixMonths = 1720

    FinancialStatements_BalanceSheet_NonCurrentPensionAndOtherPostretirementBenefitPlans_NineMonths = 1721

    FinancialStatements_BalanceSheet_NonCurrentPensionAndOtherPostretirementBenefitPlans_TwelveMonths = 1722

    FinancialStatements_BalanceSheet_PolicyLoans_ThreeMonths = 1723

    FinancialStatements_BalanceSheet_PolicyLoans_TwelveMonths = 1724

    FinancialStatements_BalanceSheet_PreferredStockEquity_OneMonth = 1725

    FinancialStatements_BalanceSheet_PreferredStockEquity_TwoMonths = 1726

    FinancialStatements_BalanceSheet_PreferredStockEquity_ThreeMonths = 1727

    FinancialStatements_BalanceSheet_PreferredStockEquity_SixMonths = 1728

    FinancialStatements_BalanceSheet_PreferredStockEquity_NineMonths = 1729

    FinancialStatements_BalanceSheet_PreferredStockEquity_TwelveMonths = 1730

    FinancialStatements_BalanceSheet_Properties_ThreeMonths = 1731

    FinancialStatements_BalanceSheet_Properties_TwelveMonths = 1732

    FinancialStatements_BalanceSheet_CurrentProvisions_TwoMonths = 1733

    FinancialStatements_BalanceSheet_CurrentProvisions_ThreeMonths = 1734

    FinancialStatements_BalanceSheet_CurrentProvisions_SixMonths = 1735

    FinancialStatements_BalanceSheet_CurrentProvisions_TwelveMonths = 1736

    FinancialStatements_BalanceSheet_LongTermProvisions_ThreeMonths = 1737

    FinancialStatements_BalanceSheet_LongTermProvisions_SixMonths = 1738

    FinancialStatements_BalanceSheet_LongTermProvisions_NineMonths = 1739

    FinancialStatements_BalanceSheet_LongTermProvisions_TwelveMonths = 1740

    FinancialStatements_BalanceSheet_RawMaterials_TwoMonths = 1741

    FinancialStatements_BalanceSheet_RawMaterials_ThreeMonths = 1742

    FinancialStatements_BalanceSheet_RawMaterials_SixMonths = 1743

    FinancialStatements_BalanceSheet_RawMaterials_NineMonths = 1744

    FinancialStatements_BalanceSheet_RawMaterials_TwelveMonths = 1745

    FinancialStatements_BalanceSheet_ReceivablesAdjustmentsAllowances_ThreeMonths = 1746

    FinancialStatements_BalanceSheet_ReceivablesAdjustmentsAllowances_NineMonths = 1747

    FinancialStatements_BalanceSheet_ReceivablesAdjustmentsAllowances_TwelveMonths = 1748

    FinancialStatements_BalanceSheet_RegulatoryAssets_ThreeMonths = 1749

    FinancialStatements_BalanceSheet_RegulatoryAssets_TwelveMonths = 1750

    FinancialStatements_BalanceSheet_RegulatoryLiabilities_ThreeMonths = 1751

    FinancialStatements_BalanceSheet_RegulatoryLiabilities_TwelveMonths = 1752

    FinancialStatements_BalanceSheet_ReinsuranceBalancesPayable_ThreeMonths = 1753

    FinancialStatements_BalanceSheet_ReinsuranceBalancesPayable_TwelveMonths = 1754

    FinancialStatements_BalanceSheet_RestrictedCash_OneMonth = 1755

    FinancialStatements_BalanceSheet_RestrictedCash_TwoMonths = 1756

    FinancialStatements_BalanceSheet_RestrictedCash_ThreeMonths = 1757

    FinancialStatements_BalanceSheet_RestrictedCash_SixMonths = 1758

    FinancialStatements_BalanceSheet_RestrictedCash_NineMonths = 1759

    FinancialStatements_BalanceSheet_RestrictedCash_TwelveMonths = 1760

    FinancialStatements_BalanceSheet_RestrictedCashAndCashEquivalents_ThreeMonths = 1761

    FinancialStatements_BalanceSheet_RestrictedCashAndCashEquivalents_SixMonths = 1762

    FinancialStatements_BalanceSheet_RestrictedCashAndCashEquivalents_NineMonths = 1763

    FinancialStatements_BalanceSheet_RestrictedCashAndCashEquivalents_TwelveMonths = 1764

    FinancialStatements_BalanceSheet_RestrictedCashAndInvestments_ThreeMonths = 1765

    FinancialStatements_BalanceSheet_RestrictedCashAndInvestments_SixMonths = 1766

    FinancialStatements_BalanceSheet_RestrictedCashAndInvestments_NineMonths = 1767

    FinancialStatements_BalanceSheet_RestrictedCashAndInvestments_TwelveMonths = 1768

    FinancialStatements_BalanceSheet_RestrictedCommonStock_ThreeMonths = 1769

    FinancialStatements_BalanceSheet_RestrictedCommonStock_NineMonths = 1770

    FinancialStatements_BalanceSheet_RestrictedCommonStock_TwelveMonths = 1771

    FinancialStatements_BalanceSheet_RestrictedInvestments_ThreeMonths = 1772

    FinancialStatements_BalanceSheet_RestrictedInvestments_TwelveMonths = 1773

    FinancialStatements_BalanceSheet_TaxesReceivable_TwoMonths = 1774

    FinancialStatements_BalanceSheet_TaxesReceivable_ThreeMonths = 1775

    FinancialStatements_BalanceSheet_TaxesReceivable_SixMonths = 1776

    FinancialStatements_BalanceSheet_TaxesReceivable_NineMonths = 1777

    FinancialStatements_BalanceSheet_TaxesReceivable_TwelveMonths = 1778

    FinancialStatements_BalanceSheet_TotalCapitalization_OneMonth = 1779

    FinancialStatements_BalanceSheet_TotalCapitalization_TwoMonths = 1780

    FinancialStatements_BalanceSheet_TotalCapitalization_ThreeMonths = 1781

    FinancialStatements_BalanceSheet_TotalCapitalization_SixMonths = 1782

    FinancialStatements_BalanceSheet_TotalCapitalization_NineMonths = 1783

    FinancialStatements_BalanceSheet_TotalCapitalization_TwelveMonths = 1784

    FinancialStatements_BalanceSheet_TotalDeferredCreditsAndOtherNonCurrentLiabilities_ThreeMonths = 1785

    FinancialStatements_BalanceSheet_TotalDeferredCreditsAndOtherNonCurrentLiabilities_SixMonths = 1786

    FinancialStatements_BalanceSheet_TotalDeferredCreditsAndOtherNonCurrentLiabilities_NineMonths = 1787

    FinancialStatements_BalanceSheet_TotalDeferredCreditsAndOtherNonCurrentLiabilities_TwelveMonths = 1788

    FinancialStatements_BalanceSheet_UnbilledReceivables_ThreeMonths = 1789

    FinancialStatements_BalanceSheet_UnbilledReceivables_TwelveMonths = 1790

    FinancialStatements_BalanceSheet_UnrealizedGainLoss_ThreeMonths = 1791

    FinancialStatements_BalanceSheet_UnrealizedGainLoss_SixMonths = 1792

    FinancialStatements_BalanceSheet_UnrealizedGainLoss_TwelveMonths = 1793

    FinancialStatements_BalanceSheet_WorkInProcess_OneMonth = 1794

    FinancialStatements_BalanceSheet_WorkInProcess_TwoMonths = 1795

    FinancialStatements_BalanceSheet_WorkInProcess_ThreeMonths = 1796

    FinancialStatements_BalanceSheet_WorkInProcess_SixMonths = 1797

    FinancialStatements_BalanceSheet_WorkInProcess_NineMonths = 1798

    FinancialStatements_BalanceSheet_WorkInProcess_TwelveMonths = 1799

    FinancialStatements_BalanceSheet_OtherNonCurrentLiabilities_OneMonth = 1800

    FinancialStatements_BalanceSheet_OtherNonCurrentLiabilities_TwoMonths = 1801

    FinancialStatements_BalanceSheet_OtherNonCurrentLiabilities_ThreeMonths = 1802

    FinancialStatements_BalanceSheet_OtherNonCurrentLiabilities_SixMonths = 1803

    FinancialStatements_BalanceSheet_OtherNonCurrentLiabilities_NineMonths = 1804

    FinancialStatements_BalanceSheet_OtherNonCurrentLiabilities_TwelveMonths = 1805

    FinancialStatements_BalanceSheet_CapitalLeaseObligations_OneMonth = 1806

    FinancialStatements_BalanceSheet_CapitalLeaseObligations_TwoMonths = 1807

    FinancialStatements_BalanceSheet_CapitalLeaseObligations_ThreeMonths = 1808

    FinancialStatements_BalanceSheet_CapitalLeaseObligations_SixMonths = 1809

    FinancialStatements_BalanceSheet_CapitalLeaseObligations_NineMonths = 1810

    FinancialStatements_BalanceSheet_CapitalLeaseObligations_TwelveMonths = 1811

    FinancialStatements_BalanceSheet_OtherLiabilities_TwoMonths = 1812

    FinancialStatements_BalanceSheet_OtherLiabilities_ThreeMonths = 1813

    FinancialStatements_BalanceSheet_OtherLiabilities_SixMonths = 1814

    FinancialStatements_BalanceSheet_OtherLiabilities_NineMonths = 1815

    FinancialStatements_BalanceSheet_OtherLiabilities_TwelveMonths = 1816

    FinancialStatements_BalanceSheet_OtherPayable_OneMonth = 1817

    FinancialStatements_BalanceSheet_OtherPayable_TwoMonths = 1818

    FinancialStatements_BalanceSheet_OtherPayable_ThreeMonths = 1819

    FinancialStatements_BalanceSheet_OtherPayable_SixMonths = 1820

    FinancialStatements_BalanceSheet_OtherPayable_NineMonths = 1821

    FinancialStatements_BalanceSheet_OtherPayable_TwelveMonths = 1822

    FinancialStatements_BalanceSheet_TangibleBookValue_OneMonth = 1823

    FinancialStatements_BalanceSheet_TangibleBookValue_TwoMonths = 1824

    FinancialStatements_BalanceSheet_TangibleBookValue_ThreeMonths = 1825

    FinancialStatements_BalanceSheet_TangibleBookValue_SixMonths = 1826

    FinancialStatements_BalanceSheet_TangibleBookValue_NineMonths = 1827

    FinancialStatements_BalanceSheet_TangibleBookValue_TwelveMonths = 1828

    FinancialStatements_BalanceSheet_TotalEquity_OneMonth = 1829

    FinancialStatements_BalanceSheet_TotalEquity_TwoMonths = 1830

    FinancialStatements_BalanceSheet_TotalEquity_ThreeMonths = 1831

    FinancialStatements_BalanceSheet_TotalEquity_SixMonths = 1832

    FinancialStatements_BalanceSheet_TotalEquity_NineMonths = 1833

    FinancialStatements_BalanceSheet_TotalEquity_TwelveMonths = 1834

    FinancialStatements_BalanceSheet_WorkingCapital_OneMonth = 1835

    FinancialStatements_BalanceSheet_WorkingCapital_TwoMonths = 1836

    FinancialStatements_BalanceSheet_WorkingCapital_ThreeMonths = 1837

    FinancialStatements_BalanceSheet_WorkingCapital_SixMonths = 1838

    FinancialStatements_BalanceSheet_WorkingCapital_NineMonths = 1839

    FinancialStatements_BalanceSheet_WorkingCapital_TwelveMonths = 1840

    FinancialStatements_BalanceSheet_TotalDebt_OneMonth = 1841

    FinancialStatements_BalanceSheet_TotalDebt_TwoMonths = 1842

    FinancialStatements_BalanceSheet_TotalDebt_ThreeMonths = 1843

    FinancialStatements_BalanceSheet_TotalDebt_SixMonths = 1844

    FinancialStatements_BalanceSheet_TotalDebt_NineMonths = 1845

    FinancialStatements_BalanceSheet_TotalDebt_TwelveMonths = 1846

    FinancialStatements_BalanceSheet_CommonUtilityPlant_ThreeMonths = 1847

    FinancialStatements_BalanceSheet_CommonUtilityPlant_NineMonths = 1848

    FinancialStatements_BalanceSheet_CommonUtilityPlant_TwelveMonths = 1849

    FinancialStatements_BalanceSheet_ElectricUtilityPlant_ThreeMonths = 1850

    FinancialStatements_BalanceSheet_ElectricUtilityPlant_TwelveMonths = 1851

    FinancialStatements_BalanceSheet_NaturalGasFuelAndOther_ThreeMonths = 1852

    FinancialStatements_BalanceSheet_NaturalGasFuelAndOther_TwelveMonths = 1853

    FinancialStatements_BalanceSheet_NetUtilityPlant_ThreeMonths = 1854

    FinancialStatements_BalanceSheet_NetUtilityPlant_NineMonths = 1855

    FinancialStatements_BalanceSheet_NetUtilityPlant_TwelveMonths = 1856

    FinancialStatements_BalanceSheet_WaterProduction_ThreeMonths = 1857

    FinancialStatements_BalanceSheet_WaterProduction_TwelveMonths = 1858

    FinancialStatements_BalanceSheet_OrdinarySharesNumber_ThreeMonths = 1859

    FinancialStatements_BalanceSheet_OrdinarySharesNumber_TwelveMonths = 1860

    FinancialStatements_BalanceSheet_PreferredSharesNumber_ThreeMonths = 1861

    FinancialStatements_BalanceSheet_PreferredSharesNumber_TwelveMonths = 1862

    FinancialStatements_BalanceSheet_TreasurySharesNumber_ThreeMonths = 1863

    FinancialStatements_BalanceSheet_TreasurySharesNumber_TwelveMonths = 1864

    FinancialStatements_BalanceSheet_TradingAndOtherReceivable_ThreeMonths = 1865

    FinancialStatements_BalanceSheet_TradingAndOtherReceivable_TwelveMonths = 1866

    FinancialStatements_BalanceSheet_EquityAttributableToOwnersOfParent_TwoMonths = 1867

    FinancialStatements_BalanceSheet_EquityAttributableToOwnersOfParent_ThreeMonths = 1868

    FinancialStatements_BalanceSheet_EquityAttributableToOwnersOfParent_TwelveMonths = 1869

    FinancialStatements_BalanceSheet_SecuritiesLoaned_ThreeMonths = 1870

    FinancialStatements_BalanceSheet_SecuritiesLoaned_TwelveMonths = 1871

    FinancialStatements_BalanceSheet_NetTangibleAssets_OneMonth = 1872

    FinancialStatements_BalanceSheet_NetTangibleAssets_TwoMonths = 1873

    FinancialStatements_BalanceSheet_NetTangibleAssets_ThreeMonths = 1874

    FinancialStatements_BalanceSheet_NetTangibleAssets_SixMonths = 1875

    FinancialStatements_BalanceSheet_NetTangibleAssets_NineMonths = 1876

    FinancialStatements_BalanceSheet_NetTangibleAssets_TwelveMonths = 1877

    FinancialStatements_BalanceSheet_DuefromRelatedPartiesCurrent_ThreeMonths = 1878

    FinancialStatements_BalanceSheet_DuefromRelatedPartiesCurrent_TwelveMonths = 1879

    FinancialStatements_BalanceSheet_DuefromRelatedPartiesNonCurrent_ThreeMonths = 1880

    FinancialStatements_BalanceSheet_DuefromRelatedPartiesNonCurrent_TwelveMonths = 1881

    FinancialStatements_BalanceSheet_DuetoRelatedParties_ThreeMonths = 1882

    FinancialStatements_BalanceSheet_DuetoRelatedParties_TwelveMonths = 1883

    FinancialStatements_BalanceSheet_DuetoRelatedPartiesCurrent_ThreeMonths = 1884

    FinancialStatements_BalanceSheet_DuetoRelatedPartiesCurrent_TwelveMonths = 1885

    FinancialStatements_BalanceSheet_DuetoRelatedPartiesNonCurrent_ThreeMonths = 1886

    FinancialStatements_BalanceSheet_DuetoRelatedPartiesNonCurrent_TwelveMonths = 1887

    FinancialStatements_BalanceSheet_InvestmentProperties_ThreeMonths = 1888

    FinancialStatements_BalanceSheet_InvestmentProperties_TwelveMonths = 1889

    FinancialStatements_BalanceSheet_InvestmentsinSubsidiariesatCost_ThreeMonths = 1890

    FinancialStatements_BalanceSheet_InvestmentsinSubsidiariesatCost_TwelveMonths = 1891

    FinancialStatements_BalanceSheet_InvestmentsinAssociatesatCost_ThreeMonths = 1892

    FinancialStatements_BalanceSheet_InvestmentsinAssociatesatCost_TwelveMonths = 1893

    FinancialStatements_BalanceSheet_InvestmentsinJointVenturesatCost_ThreeMonths = 1894

    FinancialStatements_BalanceSheet_InvestmentsinJointVenturesatCost_TwelveMonths = 1895

    FinancialStatements_BalanceSheet_InvestmentinFinancialAssets_TwoMonths = 1896

    FinancialStatements_BalanceSheet_InvestmentinFinancialAssets_ThreeMonths = 1897

    FinancialStatements_BalanceSheet_InvestmentinFinancialAssets_TwelveMonths = 1898

    FinancialStatements_BalanceSheet_FinanceLeaseReceivables_ThreeMonths = 1899

    FinancialStatements_BalanceSheet_FinanceLeaseReceivables_TwelveMonths = 1900

    FinancialStatements_BalanceSheet_ConvertibleLoansCurrent_TwelveMonths = 1901

    FinancialStatements_BalanceSheet_BankLoansCurrent_ThreeMonths = 1902

    FinancialStatements_BalanceSheet_BankLoansCurrent_TwelveMonths = 1903

    FinancialStatements_BalanceSheet_OtherLoansCurrent_ThreeMonths = 1904

    FinancialStatements_BalanceSheet_OtherLoansCurrent_TwelveMonths = 1905

    FinancialStatements_BalanceSheet_AccruedandDeferredIncome_ThreeMonths = 1906

    FinancialStatements_BalanceSheet_AccruedandDeferredIncome_TwelveMonths = 1907

    FinancialStatements_BalanceSheet_BankLoansNonCurrent_ThreeMonths = 1908

    FinancialStatements_BalanceSheet_BankLoansNonCurrent_TwelveMonths = 1909

    FinancialStatements_BalanceSheet_OtherLoansNonCurrent_ThreeMonths = 1910

    FinancialStatements_BalanceSheet_OtherLoansNonCurrent_TwelveMonths = 1911

    FinancialStatements_BalanceSheet_OtherReserves_ThreeMonths = 1912

    FinancialStatements_BalanceSheet_OtherReserves_TwelveMonths = 1913

    FinancialStatements_BalanceSheet_LoansandAdvancestoBank_ThreeMonths = 1914

    FinancialStatements_BalanceSheet_LoansandAdvancestoBank_TwelveMonths = 1915

    FinancialStatements_BalanceSheet_LoansandAdvancestoCustomer_ThreeMonths = 1916

    FinancialStatements_BalanceSheet_LoansandAdvancestoCustomer_TwelveMonths = 1917

    FinancialStatements_BalanceSheet_TreasuryBillsandOtherEligibleBills_ThreeMonths = 1918

    FinancialStatements_BalanceSheet_TreasuryBillsandOtherEligibleBills_TwelveMonths = 1919

    FinancialStatements_BalanceSheet_EquitySharesInvestments_ThreeMonths = 1920

    FinancialStatements_BalanceSheet_EquitySharesInvestments_TwelveMonths = 1921

    FinancialStatements_BalanceSheet_DepositsbyBank_ThreeMonths = 1922

    FinancialStatements_BalanceSheet_DepositsbyBank_TwelveMonths = 1923

    FinancialStatements_BalanceSheet_CustomerAccounts_ThreeMonths = 1924

    FinancialStatements_BalanceSheet_CustomerAccounts_TwelveMonths = 1925

    FinancialStatements_BalanceSheet_ItemsinTheCourseofTransmissiontoOtherBanks_ThreeMonths = 1926

    FinancialStatements_BalanceSheet_ItemsinTheCourseofTransmissiontoOtherBanks_TwelveMonths = 1927

    FinancialStatements_BalanceSheet_TradingandFinancialLiabilities_ThreeMonths = 1928

    FinancialStatements_BalanceSheet_TradingandFinancialLiabilities_TwelveMonths = 1929

    FinancialStatements_BalanceSheet_DebtSecuritiesinIssue_ThreeMonths = 1930

    FinancialStatements_BalanceSheet_DebtSecuritiesinIssue_TwelveMonths = 1931

    FinancialStatements_BalanceSheet_SubordinatedLiabilities_ThreeMonths = 1932

    FinancialStatements_BalanceSheet_SubordinatedLiabilities_TwelveMonths = 1933

    FinancialStatements_BalanceSheet_ProvisionsTotal_ThreeMonths = 1934

    FinancialStatements_BalanceSheet_ProvisionsTotal_TwelveMonths = 1935

    FinancialStatements_BalanceSheet_OperatingLeaseAssets_ThreeMonths = 1936

    FinancialStatements_BalanceSheet_OperatingLeaseAssets_TwelveMonths = 1937

    FinancialStatements_BalanceSheet_ClaimsOutstanding_ThreeMonths = 1938

    FinancialStatements_BalanceSheet_ClaimsOutstanding_TwelveMonths = 1939

    FinancialStatements_BalanceSheet_LiabilitiesHeldforSaleCurrent_ThreeMonths = 1940

    FinancialStatements_BalanceSheet_LiabilitiesHeldforSaleCurrent_TwelveMonths = 1941

    FinancialStatements_BalanceSheet_LiabilitiesHeldforSaleNonCurrent_ThreeMonths = 1942

    FinancialStatements_BalanceSheet_LiabilitiesHeldforSaleNonCurrent_TwelveMonths = 1943

    FinancialStatements_BalanceSheet_DebtSecurities_ThreeMonths = 1944

    FinancialStatements_BalanceSheet_DebtSecurities_TwelveMonths = 1945

    FinancialStatements_BalanceSheet_TotalFinancialLeaseObligations_ThreeMonths = 1946

    FinancialStatements_BalanceSheet_TotalFinancialLeaseObligations_TwelveMonths = 1947

    FinancialStatements_BalanceSheet_AccruedandDeferredIncomeCurrent_ThreeMonths = 1948

    FinancialStatements_BalanceSheet_AccruedandDeferredIncomeCurrent_TwelveMonths = 1949

    FinancialStatements_BalanceSheet_AccruedandDeferredIncomeNonCurrent_ThreeMonths = 1950

    FinancialStatements_BalanceSheet_AccruedandDeferredIncomeNonCurrent_TwelveMonths = 1951

    FinancialStatements_BalanceSheet_FinanceLeaseReceivablesCurrent_ThreeMonths = 1952

    FinancialStatements_BalanceSheet_FinanceLeaseReceivablesCurrent_TwelveMonths = 1953

    FinancialStatements_BalanceSheet_FinanceLeaseReceivablesNonCurrent_ThreeMonths = 1954

    FinancialStatements_BalanceSheet_FinanceLeaseReceivablesNonCurrent_TwelveMonths = 1955

    FinancialStatements_BalanceSheet_FinancialLiabilitiesCurrent_ThreeMonths = 1956

    FinancialStatements_BalanceSheet_FinancialLiabilitiesCurrent_TwelveMonths = 1957

    FinancialStatements_BalanceSheet_FinancialLiabilitiesNonCurrent_ThreeMonths = 1958

    FinancialStatements_BalanceSheet_FinancialLiabilitiesNonCurrent_TwelveMonths = 1959

    FinancialStatements_BalanceSheet_FinancialAssetsDesignatedasFairValueThroughProfitorLossTotal_ThreeMonths = 1960

    FinancialStatements_BalanceSheet_FinancialAssetsDesignatedasFairValueThroughProfitorLossTotal_TwelveMonths = 1961

    FinancialStatements_BalanceSheet_TaxesAssetsCurrent_ThreeMonths = 1962

    FinancialStatements_BalanceSheet_TaxesAssetsCurrent_TwelveMonths = 1963

    FinancialStatements_BalanceSheet_OtherEquityInterest_ThreeMonths = 1964

    FinancialStatements_BalanceSheet_OtherEquityInterest_TwelveMonths = 1965

    FinancialStatements_BalanceSheet_InterestBearingBorrowingsNonCurrent_ThreeMonths = 1966

    FinancialStatements_BalanceSheet_InterestBearingBorrowingsNonCurrent_TwelveMonths = 1967

    FinancialStatements_BalanceSheet_NonInterestBearingBorrowingsNonCurrent_ThreeMonths = 1968

    FinancialStatements_BalanceSheet_NonInterestBearingBorrowingsNonCurrent_TwelveMonths = 1969

    FinancialStatements_BalanceSheet_TradeandOtherPayablesNonCurrent_ThreeMonths = 1970

    FinancialStatements_BalanceSheet_TradeandOtherPayablesNonCurrent_TwelveMonths = 1971

    FinancialStatements_BalanceSheet_NonInterestBearingBorrowingsCurrent_ThreeMonths = 1972

    FinancialStatements_BalanceSheet_NonInterestBearingBorrowingsCurrent_TwelveMonths = 1973

    FinancialStatements_BalanceSheet_PensionandOtherPostRetirementBenefitPlansCurrent_ThreeMonths = 1974

    FinancialStatements_BalanceSheet_PensionandOtherPostRetirementBenefitPlansCurrent_TwelveMonths = 1975

    FinancialStatements_BalanceSheet_OtherLoanAssets_ThreeMonths = 1976

    FinancialStatements_BalanceSheet_OtherLoanAssets_TwelveMonths = 1977

    FinancialStatements_BalanceSheet_AssetsPledgedasCollateralSubjecttoSaleorRepledgingTotal_ThreeMonths = 1978

    FinancialStatements_BalanceSheet_AssetsPledgedasCollateralSubjecttoSaleorRepledgingTotal_TwelveMonths = 1979

    FinancialStatements_BalanceSheet_TaxAssetsTotal_ThreeMonths = 1980

    FinancialStatements_BalanceSheet_TaxAssetsTotal_TwelveMonths = 1981

    FinancialStatements_BalanceSheet_AdvancesfromCentralBanks_ThreeMonths = 1982

    FinancialStatements_BalanceSheet_AdvancesfromCentralBanks_TwelveMonths = 1983

    FinancialStatements_BalanceSheet_DepositCertificates_ThreeMonths = 1984

    FinancialStatements_BalanceSheet_DepositCertificates_TwelveMonths = 1985

    FinancialStatements_BalanceSheet_NonInterestBearingBorrowingsTotal_ThreeMonths = 1986

    FinancialStatements_BalanceSheet_NonInterestBearingBorrowingsTotal_TwelveMonths = 1987

    FinancialStatements_BalanceSheet_OtherBorrowedFunds_ThreeMonths = 1988

    FinancialStatements_BalanceSheet_OtherBorrowedFunds_TwelveMonths = 1989

    FinancialStatements_BalanceSheet_FinancialLiabilitiesDesignatedasFairValueThroughProfitorLossTotal_ThreeMonths = 1990

    FinancialStatements_BalanceSheet_FinancialLiabilitiesDesignatedasFairValueThroughProfitorLossTotal_TwelveMonths = 1991

    FinancialStatements_BalanceSheet_FinancialLiabilitiesMeasuredatAmortizedCostTotal_ThreeMonths = 1992

    FinancialStatements_BalanceSheet_FinancialLiabilitiesMeasuredatAmortizedCostTotal_TwelveMonths = 1993

    FinancialStatements_BalanceSheet_AccruedLiabilitiesTotal_TwoMonths = 1994

    FinancialStatements_BalanceSheet_AccruedLiabilitiesTotal_ThreeMonths = 1995

    FinancialStatements_BalanceSheet_AccruedLiabilitiesTotal_TwelveMonths = 1996

    FinancialStatements_BalanceSheet_DeferredIncomeTotal_ThreeMonths = 1997

    FinancialStatements_BalanceSheet_DeferredIncomeTotal_TwelveMonths = 1998

    FinancialStatements_BalanceSheet_DeferredTaxLiabilitiesTotal_ThreeMonths = 1999

    FinancialStatements_BalanceSheet_DeferredTaxLiabilitiesTotal_TwelveMonths = 2000

    FinancialStatements_BalanceSheet_ReinsuranceAssets_ThreeMonths = 2001

    FinancialStatements_BalanceSheet_ReinsuranceAssets_TwelveMonths = 2002

    FinancialStatements_BalanceSheet_DepositsMadeunderAssumedReinsuranceContract_ThreeMonths = 2003

    FinancialStatements_BalanceSheet_DepositsMadeunderAssumedReinsuranceContract_TwelveMonths = 2004

    FinancialStatements_BalanceSheet_InsuranceContractAssets_ThreeMonths = 2005

    FinancialStatements_BalanceSheet_InsuranceContractAssets_TwelveMonths = 2006

    FinancialStatements_BalanceSheet_InsuranceContractLiabilities_ThreeMonths = 2007

    FinancialStatements_BalanceSheet_InsuranceContractLiabilities_TwelveMonths = 2008

    FinancialStatements_BalanceSheet_DepositsReceivedunderCededInsuranceContract_ThreeMonths = 2009

    FinancialStatements_BalanceSheet_DepositsReceivedunderCededInsuranceContract_TwelveMonths = 2010

    FinancialStatements_BalanceSheet_InvestmentContractLiabilities_ThreeMonths = 2011

    FinancialStatements_BalanceSheet_InvestmentContractLiabilities_TwelveMonths = 2012

    FinancialStatements_BalanceSheet_PensionAndOtherPostretirementBenefitPlansTotal_ThreeMonths = 2013

    FinancialStatements_BalanceSheet_PensionAndOtherPostretirementBenefitPlansTotal_TwelveMonths = 2014

    FinancialStatements_BalanceSheet_LiabilitiesHeldforSaleTotal_ThreeMonths = 2015

    FinancialStatements_BalanceSheet_LiabilitiesHeldforSaleTotal_TwelveMonths = 2016

    FinancialStatements_BalanceSheet_HedgingAssetsCurrent_ThreeMonths = 2017

    FinancialStatements_BalanceSheet_HedgingAssetsCurrent_TwelveMonths = 2018

    FinancialStatements_BalanceSheet_ConvertibleLoansTotal_ThreeMonths = 2019

    FinancialStatements_BalanceSheet_ConvertibleLoansTotal_TwelveMonths = 2020

    FinancialStatements_BalanceSheet_BankLoansTotal_ThreeMonths = 2021

    FinancialStatements_BalanceSheet_BankLoansTotal_TwelveMonths = 2022

    FinancialStatements_BalanceSheet_OtherLoansTotal_ThreeMonths = 2023

    FinancialStatements_BalanceSheet_OtherLoansTotal_TwelveMonths = 2024

    FinancialStatements_BalanceSheet_InsuranceFundsNonCurrent_ThreeMonths = 2025

    FinancialStatements_BalanceSheet_InsuranceFundsNonCurrent_TwelveMonths = 2026

    FinancialStatements_BalanceSheet_DebtTotal_ThreeMonths = 2027

    FinancialStatements_BalanceSheet_DebtTotal_TwelveMonths = 2028

    FinancialStatements_BalanceSheet_ComTreShaNum_ThreeMonths = 2029

    FinancialStatements_BalanceSheet_ComTreShaNum_TwelveMonths = 2030

    FinancialStatements_BalanceSheet_PreTreShaNum_ThreeMonths = 2031

    FinancialStatements_BalanceSheet_PreTreShaNum_TwelveMonths = 2032

    FinancialStatements_BalanceSheet_NetDebt_OneMonth = 2033

    FinancialStatements_BalanceSheet_NetDebt_TwoMonths = 2034

    FinancialStatements_BalanceSheet_NetDebt_ThreeMonths = 2035

    FinancialStatements_BalanceSheet_NetDebt_SixMonths = 2036

    FinancialStatements_BalanceSheet_NetDebt_NineMonths = 2037

    FinancialStatements_BalanceSheet_NetDebt_TwelveMonths = 2038

    FinancialStatements_BalanceSheet_ShareIssued_ThreeMonths = 2039

    FinancialStatements_BalanceSheet_ShareIssued_TwelveMonths = 2040

    FinancialStatements_BalanceSheet_AssetsHeldForSaleCurrent_ThreeMonths = 2041

    FinancialStatements_BalanceSheet_AssetsHeldForSaleCurrent_TwelveMonths = 2042

    FinancialStatements_BalanceSheet_AssetsHeldForSaleNonCurrent_ThreeMonths = 2043

    FinancialStatements_BalanceSheet_AssetsHeldForSaleNonCurrent_TwelveMonths = 2044

    FinancialStatements_BalanceSheet_BiologicalAssets_ThreeMonths = 2045

    FinancialStatements_BalanceSheet_BiologicalAssets_TwelveMonths = 2046

    FinancialStatements_BalanceSheet_CashRestrictedOrPledged_ThreeMonths = 2047

    FinancialStatements_BalanceSheet_CashRestrictedOrPledged_TwelveMonths = 2048

    FinancialStatements_BalanceSheet_ConvertibleLoansNonCurrent_ThreeMonths = 2049

    FinancialStatements_BalanceSheet_ConvertibleLoansNonCurrent_TwelveMonths = 2050

    FinancialStatements_BalanceSheet_FinancialOrDerivativeInvestmentCurrentLiabilities_ThreeMonths = 2051

    FinancialStatements_BalanceSheet_FinancialOrDerivativeInvestmentCurrentLiabilities_TwelveMonths = 2052

    FinancialStatements_BalanceSheet_OtherInvestments_ThreeMonths = 2053

    FinancialStatements_BalanceSheet_OtherInvestments_TwelveMonths = 2054

    FinancialStatements_BalanceSheet_TradeAndOtherReceivablesNonCurrent_ThreeMonths = 2055

    FinancialStatements_BalanceSheet_TradeAndOtherReceivablesNonCurrent_TwelveMonths = 2056

    FinancialStatements_BalanceSheet_DueFromRelatedParties_ThreeMonths = 2057

    FinancialStatements_BalanceSheet_DueFromRelatedParties_TwelveMonths = 2058

    FinancialStatements_BalanceSheet_UnallocatedSurplus_ThreeMonths = 2059

    FinancialStatements_BalanceSheet_UnallocatedSurplus_TwelveMonths = 2060

    FinancialStatements_BalanceSheet_DebtDueInYear1_ThreeMonths = 2061

    FinancialStatements_BalanceSheet_DebtDueInYear1_TwelveMonths = 2062

    FinancialStatements_BalanceSheet_DebtDueInYear2_ThreeMonths = 2063

    FinancialStatements_BalanceSheet_DebtDueInYear2_TwelveMonths = 2064

    FinancialStatements_BalanceSheet_DebtDueInYear5_ThreeMonths = 2065

    FinancialStatements_BalanceSheet_DebtDueInYear5_TwelveMonths = 2066

    FinancialStatements_BalanceSheet_DebtDueBeyond_ThreeMonths = 2067

    FinancialStatements_BalanceSheet_DebtDueBeyond_TwelveMonths = 2068

    FinancialStatements_BalanceSheet_TotalDebtInMaturitySchedule_ThreeMonths = 2069

    FinancialStatements_BalanceSheet_TotalDebtInMaturitySchedule_TwelveMonths = 2070

    FinancialStatements_BalanceSheet_FixedAssetsRevaluationReserve_ThreeMonths = 2071

    FinancialStatements_BalanceSheet_FixedAssetsRevaluationReserve_TwelveMonths = 2072

    FinancialStatements_BalanceSheet_CurrentOtherFinancialLiabilities_ThreeMonths = 2073

    FinancialStatements_BalanceSheet_CurrentOtherFinancialLiabilities_TwelveMonths = 2074

    FinancialStatements_BalanceSheet_NonCurrentOtherFinancialLiabilities_ThreeMonths = 2075

    FinancialStatements_BalanceSheet_NonCurrentOtherFinancialLiabilities_TwelveMonths = 2076

    FinancialStatements_BalanceSheet_OtherFinancialLiabilities_ThreeMonths = 2077

    FinancialStatements_BalanceSheet_OtherFinancialLiabilities_TwelveMonths = 2078

    FinancialStatements_BalanceSheet_TotalLiabilitiesAsReported_ThreeMonths = 2079

    FinancialStatements_BalanceSheet_TotalLiabilitiesAsReported_TwelveMonths = 2080

    FinancialStatements_BalanceSheet_TotalEquityAsReported_ThreeMonths = 2081

    FinancialStatements_BalanceSheet_TotalEquityAsReported_TwelveMonths = 2082

    FinancialStatements_CashFlowStatement_CFFileDate_OneMonth = 2083

    FinancialStatements_CashFlowStatement_CFFileDate_TwoMonths = 2084

    FinancialStatements_CashFlowStatement_CFFileDate_ThreeMonths = 2085

    FinancialStatements_CashFlowStatement_CFFileDate_SixMonths = 2086

    FinancialStatements_CashFlowStatement_CFFileDate_NineMonths = 2087

    FinancialStatements_CashFlowStatement_CFFileDate_TwelveMonths = 2088

    FinancialStatements_CashFlowStatement_Amortization_OneMonth = 2089

    FinancialStatements_CashFlowStatement_Amortization_TwoMonths = 2090

    FinancialStatements_CashFlowStatement_Amortization_ThreeMonths = 2091

    FinancialStatements_CashFlowStatement_Amortization_SixMonths = 2092

    FinancialStatements_CashFlowStatement_Amortization_NineMonths = 2093

    FinancialStatements_CashFlowStatement_Amortization_TwelveMonths = 2094

    FinancialStatements_CashFlowStatement_CapitalExpenditure_OneMonth = 2095

    FinancialStatements_CashFlowStatement_CapitalExpenditure_TwoMonths = 2096

    FinancialStatements_CashFlowStatement_CapitalExpenditure_ThreeMonths = 2097

    FinancialStatements_CashFlowStatement_CapitalExpenditure_SixMonths = 2098

    FinancialStatements_CashFlowStatement_CapitalExpenditure_NineMonths = 2099

    FinancialStatements_CashFlowStatement_CapitalExpenditure_TwelveMonths = 2100

    FinancialStatements_CashFlowStatement_CashDividendsPaid_OneMonth = 2101

    FinancialStatements_CashFlowStatement_CashDividendsPaid_TwoMonths = 2102

    FinancialStatements_CashFlowStatement_CashDividendsPaid_ThreeMonths = 2103

    FinancialStatements_CashFlowStatement_CashDividendsPaid_SixMonths = 2104

    FinancialStatements_CashFlowStatement_CashDividendsPaid_NineMonths = 2105

    FinancialStatements_CashFlowStatement_CashDividendsPaid_TwelveMonths = 2106

    FinancialStatements_CashFlowStatement_CashFlowFromContinuingFinancingActivities_TwoMonths = 2107

    FinancialStatements_CashFlowStatement_CashFlowFromContinuingFinancingActivities_ThreeMonths = 2108

    FinancialStatements_CashFlowStatement_CashFlowFromContinuingFinancingActivities_SixMonths = 2109

    FinancialStatements_CashFlowStatement_CashFlowFromContinuingFinancingActivities_NineMonths = 2110

    FinancialStatements_CashFlowStatement_CashFlowFromContinuingFinancingActivities_TwelveMonths = 2111

    FinancialStatements_CashFlowStatement_CashFlowFromContinuingInvestingActivities_TwoMonths = 2112

    FinancialStatements_CashFlowStatement_CashFlowFromContinuingInvestingActivities_ThreeMonths = 2113

    FinancialStatements_CashFlowStatement_CashFlowFromContinuingInvestingActivities_SixMonths = 2114

    FinancialStatements_CashFlowStatement_CashFlowFromContinuingInvestingActivities_NineMonths = 2115

    FinancialStatements_CashFlowStatement_CashFlowFromContinuingInvestingActivities_TwelveMonths = 2116

    FinancialStatements_CashFlowStatement_CashFlowFromContinuingOperatingActivities_TwoMonths = 2117

    FinancialStatements_CashFlowStatement_CashFlowFromContinuingOperatingActivities_ThreeMonths = 2118

    FinancialStatements_CashFlowStatement_CashFlowFromContinuingOperatingActivities_SixMonths = 2119

    FinancialStatements_CashFlowStatement_CashFlowFromContinuingOperatingActivities_NineMonths = 2120

    FinancialStatements_CashFlowStatement_CashFlowFromContinuingOperatingActivities_TwelveMonths = 2121

    FinancialStatements_CashFlowStatement_CashFlowFromDiscontinuedOperation_ThreeMonths = 2122

    FinancialStatements_CashFlowStatement_CashFlowFromDiscontinuedOperation_SixMonths = 2123

    FinancialStatements_CashFlowStatement_CashFlowFromDiscontinuedOperation_NineMonths = 2124

    FinancialStatements_CashFlowStatement_CashFlowFromDiscontinuedOperation_TwelveMonths = 2125

    FinancialStatements_CashFlowStatement_FinancingCashFlow_OneMonth = 2126

    FinancialStatements_CashFlowStatement_FinancingCashFlow_TwoMonths = 2127

    FinancialStatements_CashFlowStatement_FinancingCashFlow_ThreeMonths = 2128

    FinancialStatements_CashFlowStatement_FinancingCashFlow_SixMonths = 2129

    FinancialStatements_CashFlowStatement_FinancingCashFlow_NineMonths = 2130

    FinancialStatements_CashFlowStatement_FinancingCashFlow_TwelveMonths = 2131

    FinancialStatements_CashFlowStatement_InvestingCashFlow_OneMonth = 2132

    FinancialStatements_CashFlowStatement_InvestingCashFlow_TwoMonths = 2133

    FinancialStatements_CashFlowStatement_InvestingCashFlow_ThreeMonths = 2134

    FinancialStatements_CashFlowStatement_InvestingCashFlow_SixMonths = 2135

    FinancialStatements_CashFlowStatement_InvestingCashFlow_NineMonths = 2136

    FinancialStatements_CashFlowStatement_InvestingCashFlow_TwelveMonths = 2137

    FinancialStatements_CashFlowStatement_OperatingCashFlow_OneMonth = 2138

    FinancialStatements_CashFlowStatement_OperatingCashFlow_TwoMonths = 2139

    FinancialStatements_CashFlowStatement_OperatingCashFlow_ThreeMonths = 2140

    FinancialStatements_CashFlowStatement_OperatingCashFlow_SixMonths = 2141

    FinancialStatements_CashFlowStatement_OperatingCashFlow_NineMonths = 2142

    FinancialStatements_CashFlowStatement_OperatingCashFlow_TwelveMonths = 2143

    FinancialStatements_CashFlowStatement_BeginningCashPosition_OneMonth = 2144

    FinancialStatements_CashFlowStatement_BeginningCashPosition_TwoMonths = 2145

    FinancialStatements_CashFlowStatement_BeginningCashPosition_ThreeMonths = 2146

    FinancialStatements_CashFlowStatement_BeginningCashPosition_SixMonths = 2147

    FinancialStatements_CashFlowStatement_BeginningCashPosition_NineMonths = 2148

    FinancialStatements_CashFlowStatement_BeginningCashPosition_TwelveMonths = 2149

    FinancialStatements_CashFlowStatement_EndCashPosition_OneMonth = 2150

    FinancialStatements_CashFlowStatement_EndCashPosition_TwoMonths = 2151

    FinancialStatements_CashFlowStatement_EndCashPosition_ThreeMonths = 2152

    FinancialStatements_CashFlowStatement_EndCashPosition_SixMonths = 2153

    FinancialStatements_CashFlowStatement_EndCashPosition_NineMonths = 2154

    FinancialStatements_CashFlowStatement_EndCashPosition_TwelveMonths = 2155

    FinancialStatements_CashFlowStatement_CashFromDiscontinuedFinancingActivities_ThreeMonths = 2156

    FinancialStatements_CashFlowStatement_CashFromDiscontinuedFinancingActivities_SixMonths = 2157

    FinancialStatements_CashFlowStatement_CashFromDiscontinuedFinancingActivities_NineMonths = 2158

    FinancialStatements_CashFlowStatement_CashFromDiscontinuedFinancingActivities_TwelveMonths = 2159

    FinancialStatements_CashFlowStatement_CashFromDiscontinuedInvestingActivities_ThreeMonths = 2160

    FinancialStatements_CashFlowStatement_CashFromDiscontinuedInvestingActivities_SixMonths = 2161

    FinancialStatements_CashFlowStatement_CashFromDiscontinuedInvestingActivities_NineMonths = 2162

    FinancialStatements_CashFlowStatement_CashFromDiscontinuedInvestingActivities_TwelveMonths = 2163

    FinancialStatements_CashFlowStatement_ChangeInAccountPayable_OneMonth = 2164

    FinancialStatements_CashFlowStatement_ChangeInAccountPayable_TwoMonths = 2165

    FinancialStatements_CashFlowStatement_ChangeInAccountPayable_ThreeMonths = 2166

    FinancialStatements_CashFlowStatement_ChangeInAccountPayable_SixMonths = 2167

    FinancialStatements_CashFlowStatement_ChangeInAccountPayable_NineMonths = 2168

    FinancialStatements_CashFlowStatement_ChangeInAccountPayable_TwelveMonths = 2169

    FinancialStatements_CashFlowStatement_ChangeInTaxPayable_OneMonth = 2170

    FinancialStatements_CashFlowStatement_ChangeInTaxPayable_TwoMonths = 2171

    FinancialStatements_CashFlowStatement_ChangeInTaxPayable_ThreeMonths = 2172

    FinancialStatements_CashFlowStatement_ChangeInTaxPayable_SixMonths = 2173

    FinancialStatements_CashFlowStatement_ChangeInTaxPayable_NineMonths = 2174

    FinancialStatements_CashFlowStatement_ChangeInTaxPayable_TwelveMonths = 2175

    FinancialStatements_CashFlowStatement_ChangeInAccruedExpense_OneMonth = 2176

    FinancialStatements_CashFlowStatement_ChangeInAccruedExpense_TwoMonths = 2177

    FinancialStatements_CashFlowStatement_ChangeInAccruedExpense_ThreeMonths = 2178

    FinancialStatements_CashFlowStatement_ChangeInAccruedExpense_SixMonths = 2179

    FinancialStatements_CashFlowStatement_ChangeInAccruedExpense_NineMonths = 2180

    FinancialStatements_CashFlowStatement_ChangeInAccruedExpense_TwelveMonths = 2181

    FinancialStatements_CashFlowStatement_ChangeInAccruedInvestmentIncome_ThreeMonths = 2182

    FinancialStatements_CashFlowStatement_ChangeInAccruedInvestmentIncome_SixMonths = 2183

    FinancialStatements_CashFlowStatement_ChangeInAccruedInvestmentIncome_NineMonths = 2184

    FinancialStatements_CashFlowStatement_ChangeInAccruedInvestmentIncome_TwelveMonths = 2185

    FinancialStatements_CashFlowStatement_ChangesInCash_OneMonth = 2186

    FinancialStatements_CashFlowStatement_ChangesInCash_TwoMonths = 2187

    FinancialStatements_CashFlowStatement_ChangesInCash_ThreeMonths = 2188

    FinancialStatements_CashFlowStatement_ChangesInCash_SixMonths = 2189

    FinancialStatements_CashFlowStatement_ChangesInCash_NineMonths = 2190

    FinancialStatements_CashFlowStatement_ChangesInCash_TwelveMonths = 2191

    FinancialStatements_CashFlowStatement_ChangeInDeferredAcquisitionCosts_ThreeMonths = 2192

    FinancialStatements_CashFlowStatement_ChangeInDeferredAcquisitionCosts_SixMonths = 2193

    FinancialStatements_CashFlowStatement_ChangeInDeferredAcquisitionCosts_NineMonths = 2194

    FinancialStatements_CashFlowStatement_ChangeInDeferredAcquisitionCosts_TwelveMonths = 2195

    FinancialStatements_CashFlowStatement_ChangeInFederalFundsAndSecuritiesSoldForRepurchase_ThreeMonths = 2196

    FinancialStatements_CashFlowStatement_ChangeInFederalFundsAndSecuritiesSoldForRepurchase_SixMonths = 2197

    FinancialStatements_CashFlowStatement_ChangeInFederalFundsAndSecuritiesSoldForRepurchase_NineMonths = 2198

    FinancialStatements_CashFlowStatement_ChangeInFederalFundsAndSecuritiesSoldForRepurchase_TwelveMonths = 2199

    FinancialStatements_CashFlowStatement_ChangeInFundsWithheld_ThreeMonths = 2200

    FinancialStatements_CashFlowStatement_ChangeInFundsWithheld_SixMonths = 2201

    FinancialStatements_CashFlowStatement_ChangeInFundsWithheld_NineMonths = 2202

    FinancialStatements_CashFlowStatement_ChangeInFundsWithheld_TwelveMonths = 2203

    FinancialStatements_CashFlowStatement_ChangeInIncomeTaxPayable_OneMonth = 2204

    FinancialStatements_CashFlowStatement_ChangeInIncomeTaxPayable_TwoMonths = 2205

    FinancialStatements_CashFlowStatement_ChangeInIncomeTaxPayable_ThreeMonths = 2206

    FinancialStatements_CashFlowStatement_ChangeInIncomeTaxPayable_SixMonths = 2207

    FinancialStatements_CashFlowStatement_ChangeInIncomeTaxPayable_NineMonths = 2208

    FinancialStatements_CashFlowStatement_ChangeInIncomeTaxPayable_TwelveMonths = 2209

    FinancialStatements_CashFlowStatement_ChangeInInterestPayable_OneMonth = 2210

    FinancialStatements_CashFlowStatement_ChangeInInterestPayable_TwoMonths = 2211

    FinancialStatements_CashFlowStatement_ChangeInInterestPayable_ThreeMonths = 2212

    FinancialStatements_CashFlowStatement_ChangeInInterestPayable_SixMonths = 2213

    FinancialStatements_CashFlowStatement_ChangeInInterestPayable_NineMonths = 2214

    FinancialStatements_CashFlowStatement_ChangeInInterestPayable_TwelveMonths = 2215

    FinancialStatements_CashFlowStatement_ChangeInInventory_OneMonth = 2216

    FinancialStatements_CashFlowStatement_ChangeInInventory_TwoMonths = 2217

    FinancialStatements_CashFlowStatement_ChangeInInventory_ThreeMonths = 2218

    FinancialStatements_CashFlowStatement_ChangeInInventory_SixMonths = 2219

    FinancialStatements_CashFlowStatement_ChangeInInventory_NineMonths = 2220

    FinancialStatements_CashFlowStatement_ChangeInInventory_TwelveMonths = 2221

    FinancialStatements_CashFlowStatement_ChangeInLoans_ThreeMonths = 2222

    FinancialStatements_CashFlowStatement_ChangeInLoans_SixMonths = 2223

    FinancialStatements_CashFlowStatement_ChangeInLoans_NineMonths = 2224

    FinancialStatements_CashFlowStatement_ChangeInLoans_TwelveMonths = 2225

    FinancialStatements_CashFlowStatement_ChangeInLossAndLossAdjustmentExpenseReserves_ThreeMonths = 2226

    FinancialStatements_CashFlowStatement_ChangeInLossAndLossAdjustmentExpenseReserves_SixMonths = 2227

    FinancialStatements_CashFlowStatement_ChangeInLossAndLossAdjustmentExpenseReserves_NineMonths = 2228

    FinancialStatements_CashFlowStatement_ChangeInLossAndLossAdjustmentExpenseReserves_TwelveMonths = 2229

    FinancialStatements_CashFlowStatement_ChangeInPayable_OneMonth = 2230

    FinancialStatements_CashFlowStatement_ChangeInPayable_TwoMonths = 2231

    FinancialStatements_CashFlowStatement_ChangeInPayable_ThreeMonths = 2232

    FinancialStatements_CashFlowStatement_ChangeInPayable_SixMonths = 2233

    FinancialStatements_CashFlowStatement_ChangeInPayable_NineMonths = 2234

    FinancialStatements_CashFlowStatement_ChangeInPayable_TwelveMonths = 2235

    FinancialStatements_CashFlowStatement_ChangeInPayablesAndAccruedExpense_OneMonth = 2236

    FinancialStatements_CashFlowStatement_ChangeInPayablesAndAccruedExpense_TwoMonths = 2237

    FinancialStatements_CashFlowStatement_ChangeInPayablesAndAccruedExpense_ThreeMonths = 2238

    FinancialStatements_CashFlowStatement_ChangeInPayablesAndAccruedExpense_SixMonths = 2239

    FinancialStatements_CashFlowStatement_ChangeInPayablesAndAccruedExpense_NineMonths = 2240

    FinancialStatements_CashFlowStatement_ChangeInPayablesAndAccruedExpense_TwelveMonths = 2241

    FinancialStatements_CashFlowStatement_ChangeInPrepaidAssets_OneMonth = 2242

    FinancialStatements_CashFlowStatement_ChangeInPrepaidAssets_TwoMonths = 2243

    FinancialStatements_CashFlowStatement_ChangeInPrepaidAssets_ThreeMonths = 2244

    FinancialStatements_CashFlowStatement_ChangeInPrepaidAssets_SixMonths = 2245

    FinancialStatements_CashFlowStatement_ChangeInPrepaidAssets_NineMonths = 2246

    FinancialStatements_CashFlowStatement_ChangeInPrepaidAssets_TwelveMonths = 2247

    FinancialStatements_CashFlowStatement_ChangeInReceivables_OneMonth = 2248

    FinancialStatements_CashFlowStatement_ChangeInReceivables_TwoMonths = 2249

    FinancialStatements_CashFlowStatement_ChangeInReceivables_ThreeMonths = 2250

    FinancialStatements_CashFlowStatement_ChangeInReceivables_SixMonths = 2251

    FinancialStatements_CashFlowStatement_ChangeInReceivables_NineMonths = 2252

    FinancialStatements_CashFlowStatement_ChangeInReceivables_TwelveMonths = 2253

    FinancialStatements_CashFlowStatement_ChangeInReinsuranceRecoverableOnPaidAndUnpaidLosses_ThreeMonths = 2254

    FinancialStatements_CashFlowStatement_ChangeInReinsuranceRecoverableOnPaidAndUnpaidLosses_SixMonths = 2255

    FinancialStatements_CashFlowStatement_ChangeInReinsuranceRecoverableOnPaidAndUnpaidLosses_NineMonths = 2256

    FinancialStatements_CashFlowStatement_ChangeInReinsuranceRecoverableOnPaidAndUnpaidLosses_TwelveMonths = 2257

    FinancialStatements_CashFlowStatement_ChangeInRestrictedCash_SixMonths = 2258

    FinancialStatements_CashFlowStatement_ChangeInRestrictedCash_TwelveMonths = 2259

    FinancialStatements_CashFlowStatement_ChangeInTradingAccountSecurities_ThreeMonths = 2260

    FinancialStatements_CashFlowStatement_ChangeInTradingAccountSecurities_SixMonths = 2261

    FinancialStatements_CashFlowStatement_ChangeInTradingAccountSecurities_NineMonths = 2262

    FinancialStatements_CashFlowStatement_ChangeInTradingAccountSecurities_TwelveMonths = 2263

    FinancialStatements_CashFlowStatement_ChangeInWorkingCapital_OneMonth = 2264

    FinancialStatements_CashFlowStatement_ChangeInWorkingCapital_TwoMonths = 2265

    FinancialStatements_CashFlowStatement_ChangeInWorkingCapital_ThreeMonths = 2266

    FinancialStatements_CashFlowStatement_ChangeInWorkingCapital_SixMonths = 2267

    FinancialStatements_CashFlowStatement_ChangeInWorkingCapital_NineMonths = 2268

    FinancialStatements_CashFlowStatement_ChangeInWorkingCapital_TwelveMonths = 2269

    FinancialStatements_CashFlowStatement_DeferredIncomeTax_OneMonth = 2270

    FinancialStatements_CashFlowStatement_DeferredIncomeTax_TwoMonths = 2271

    FinancialStatements_CashFlowStatement_DeferredIncomeTax_ThreeMonths = 2272

    FinancialStatements_CashFlowStatement_DeferredIncomeTax_SixMonths = 2273

    FinancialStatements_CashFlowStatement_DeferredIncomeTax_NineMonths = 2274

    FinancialStatements_CashFlowStatement_DeferredIncomeTax_TwelveMonths = 2275

    FinancialStatements_CashFlowStatement_DeferredTax_OneMonth = 2276

    FinancialStatements_CashFlowStatement_DeferredTax_TwoMonths = 2277

    FinancialStatements_CashFlowStatement_DeferredTax_ThreeMonths = 2278

    FinancialStatements_CashFlowStatement_DeferredTax_SixMonths = 2279

    FinancialStatements_CashFlowStatement_DeferredTax_NineMonths = 2280

    FinancialStatements_CashFlowStatement_DeferredTax_TwelveMonths = 2281

    FinancialStatements_CashFlowStatement_Depletion_ThreeMonths = 2282

    FinancialStatements_CashFlowStatement_Depletion_SixMonths = 2283

    FinancialStatements_CashFlowStatement_Depletion_NineMonths = 2284

    FinancialStatements_CashFlowStatement_Depletion_TwelveMonths = 2285

    FinancialStatements_CashFlowStatement_Depreciation_OneMonth = 2286

    FinancialStatements_CashFlowStatement_Depreciation_TwoMonths = 2287

    FinancialStatements_CashFlowStatement_Depreciation_ThreeMonths = 2288

    FinancialStatements_CashFlowStatement_Depreciation_SixMonths = 2289

    FinancialStatements_CashFlowStatement_Depreciation_NineMonths = 2290

    FinancialStatements_CashFlowStatement_Depreciation_TwelveMonths = 2291

    FinancialStatements_CashFlowStatement_DepreciationAndAmortization_OneMonth = 2292

    FinancialStatements_CashFlowStatement_DepreciationAndAmortization_TwoMonths = 2293

    FinancialStatements_CashFlowStatement_DepreciationAndAmortization_ThreeMonths = 2294

    FinancialStatements_CashFlowStatement_DepreciationAndAmortization_SixMonths = 2295

    FinancialStatements_CashFlowStatement_DepreciationAndAmortization_NineMonths = 2296

    FinancialStatements_CashFlowStatement_DepreciationAndAmortization_TwelveMonths = 2297

    FinancialStatements_CashFlowStatement_DepreciationAmortizationDepletion_OneMonth = 2298

    FinancialStatements_CashFlowStatement_DepreciationAmortizationDepletion_TwoMonths = 2299

    FinancialStatements_CashFlowStatement_DepreciationAmortizationDepletion_ThreeMonths = 2300

    FinancialStatements_CashFlowStatement_DepreciationAmortizationDepletion_SixMonths = 2301

    FinancialStatements_CashFlowStatement_DepreciationAmortizationDepletion_NineMonths = 2302

    FinancialStatements_CashFlowStatement_DepreciationAmortizationDepletion_TwelveMonths = 2303

    FinancialStatements_CashFlowStatement_EffectOfExchangeRateChanges_OneMonth = 2304

    FinancialStatements_CashFlowStatement_EffectOfExchangeRateChanges_TwoMonths = 2305

    FinancialStatements_CashFlowStatement_EffectOfExchangeRateChanges_ThreeMonths = 2306

    FinancialStatements_CashFlowStatement_EffectOfExchangeRateChanges_SixMonths = 2307

    FinancialStatements_CashFlowStatement_EffectOfExchangeRateChanges_NineMonths = 2308

    FinancialStatements_CashFlowStatement_EffectOfExchangeRateChanges_TwelveMonths = 2309

    FinancialStatements_CashFlowStatement_IncreaseDecreaseInDeposit_ThreeMonths = 2310

    FinancialStatements_CashFlowStatement_IncreaseDecreaseInDeposit_SixMonths = 2311

    FinancialStatements_CashFlowStatement_IncreaseDecreaseInDeposit_NineMonths = 2312

    FinancialStatements_CashFlowStatement_IncreaseDecreaseInDeposit_TwelveMonths = 2313

    FinancialStatements_CashFlowStatement_NetCommonStockIssuance_OneMonth = 2314

    FinancialStatements_CashFlowStatement_NetCommonStockIssuance_TwoMonths = 2315

    FinancialStatements_CashFlowStatement_NetCommonStockIssuance_ThreeMonths = 2316

    FinancialStatements_CashFlowStatement_NetCommonStockIssuance_SixMonths = 2317

    FinancialStatements_CashFlowStatement_NetCommonStockIssuance_NineMonths = 2318

    FinancialStatements_CashFlowStatement_NetCommonStockIssuance_TwelveMonths = 2319

    FinancialStatements_CashFlowStatement_NetIssuancePaymentsOfDebt_OneMonth = 2320

    FinancialStatements_CashFlowStatement_NetIssuancePaymentsOfDebt_TwoMonths = 2321

    FinancialStatements_CashFlowStatement_NetIssuancePaymentsOfDebt_ThreeMonths = 2322

    FinancialStatements_CashFlowStatement_NetIssuancePaymentsOfDebt_SixMonths = 2323

    FinancialStatements_CashFlowStatement_NetIssuancePaymentsOfDebt_NineMonths = 2324

    FinancialStatements_CashFlowStatement_NetIssuancePaymentsOfDebt_TwelveMonths = 2325

    FinancialStatements_CashFlowStatement_NetLongTermDebtIssuance_OneMonth = 2326

    FinancialStatements_CashFlowStatement_NetLongTermDebtIssuance_TwoMonths = 2327

    FinancialStatements_CashFlowStatement_NetLongTermDebtIssuance_ThreeMonths = 2328

    FinancialStatements_CashFlowStatement_NetLongTermDebtIssuance_SixMonths = 2329

    FinancialStatements_CashFlowStatement_NetLongTermDebtIssuance_NineMonths = 2330

    FinancialStatements_CashFlowStatement_NetLongTermDebtIssuance_TwelveMonths = 2331

    FinancialStatements_CashFlowStatement_NetPreferredStockIssuance_OneMonth = 2332

    FinancialStatements_CashFlowStatement_NetPreferredStockIssuance_TwoMonths = 2333

    FinancialStatements_CashFlowStatement_NetPreferredStockIssuance_ThreeMonths = 2334

    FinancialStatements_CashFlowStatement_NetPreferredStockIssuance_SixMonths = 2335

    FinancialStatements_CashFlowStatement_NetPreferredStockIssuance_NineMonths = 2336

    FinancialStatements_CashFlowStatement_NetPreferredStockIssuance_TwelveMonths = 2337

    FinancialStatements_CashFlowStatement_NetShortTermDebtIssuance_OneMonth = 2338

    FinancialStatements_CashFlowStatement_NetShortTermDebtIssuance_TwoMonths = 2339

    FinancialStatements_CashFlowStatement_NetShortTermDebtIssuance_ThreeMonths = 2340

    FinancialStatements_CashFlowStatement_NetShortTermDebtIssuance_SixMonths = 2341

    FinancialStatements_CashFlowStatement_NetShortTermDebtIssuance_NineMonths = 2342

    FinancialStatements_CashFlowStatement_NetShortTermDebtIssuance_TwelveMonths = 2343

    FinancialStatements_CashFlowStatement_NetCashFromDiscontinuedOperations_ThreeMonths = 2344

    FinancialStatements_CashFlowStatement_NetCashFromDiscontinuedOperations_SixMonths = 2345

    FinancialStatements_CashFlowStatement_NetCashFromDiscontinuedOperations_NineMonths = 2346

    FinancialStatements_CashFlowStatement_NetCashFromDiscontinuedOperations_TwelveMonths = 2347

    FinancialStatements_CashFlowStatement_NetForeignCurrencyExchangeGainLoss_OneMonth = 2348

    FinancialStatements_CashFlowStatement_NetForeignCurrencyExchangeGainLoss_ThreeMonths = 2349

    FinancialStatements_CashFlowStatement_NetForeignCurrencyExchangeGainLoss_SixMonths = 2350

    FinancialStatements_CashFlowStatement_NetForeignCurrencyExchangeGainLoss_NineMonths = 2351

    FinancialStatements_CashFlowStatement_NetForeignCurrencyExchangeGainLoss_TwelveMonths = 2352

    FinancialStatements_CashFlowStatement_NetIncomeFromContinuingOperations_OneMonth = 2353

    FinancialStatements_CashFlowStatement_NetIncomeFromContinuingOperations_TwoMonths = 2354

    FinancialStatements_CashFlowStatement_NetIncomeFromContinuingOperations_ThreeMonths = 2355

    FinancialStatements_CashFlowStatement_NetIncomeFromContinuingOperations_SixMonths = 2356

    FinancialStatements_CashFlowStatement_NetIncomeFromContinuingOperations_NineMonths = 2357

    FinancialStatements_CashFlowStatement_NetIncomeFromContinuingOperations_TwelveMonths = 2358

    FinancialStatements_CashFlowStatement_PaymentForLoans_ThreeMonths = 2359

    FinancialStatements_CashFlowStatement_PaymentForLoans_SixMonths = 2360

    FinancialStatements_CashFlowStatement_PaymentForLoans_NineMonths = 2361

    FinancialStatements_CashFlowStatement_PaymentForLoans_TwelveMonths = 2362

    FinancialStatements_CashFlowStatement_CommonStockPayments_OneMonth = 2363

    FinancialStatements_CashFlowStatement_CommonStockPayments_TwoMonths = 2364

    FinancialStatements_CashFlowStatement_CommonStockPayments_ThreeMonths = 2365

    FinancialStatements_CashFlowStatement_CommonStockPayments_SixMonths = 2366

    FinancialStatements_CashFlowStatement_CommonStockPayments_NineMonths = 2367

    FinancialStatements_CashFlowStatement_CommonStockPayments_TwelveMonths = 2368

    FinancialStatements_CashFlowStatement_PreferredStockPayments_OneMonth = 2369

    FinancialStatements_CashFlowStatement_PreferredStockPayments_ThreeMonths = 2370

    FinancialStatements_CashFlowStatement_PreferredStockPayments_SixMonths = 2371

    FinancialStatements_CashFlowStatement_PreferredStockPayments_NineMonths = 2372

    FinancialStatements_CashFlowStatement_PreferredStockPayments_TwelveMonths = 2373

    FinancialStatements_CashFlowStatement_LongTermDebtPayments_OneMonth = 2374

    FinancialStatements_CashFlowStatement_LongTermDebtPayments_TwoMonths = 2375

    FinancialStatements_CashFlowStatement_LongTermDebtPayments_ThreeMonths = 2376

    FinancialStatements_CashFlowStatement_LongTermDebtPayments_SixMonths = 2377

    FinancialStatements_CashFlowStatement_LongTermDebtPayments_NineMonths = 2378

    FinancialStatements_CashFlowStatement_LongTermDebtPayments_TwelveMonths = 2379

    FinancialStatements_CashFlowStatement_ShortTermDebtPayments_OneMonth = 2380

    FinancialStatements_CashFlowStatement_ShortTermDebtPayments_TwoMonths = 2381

    FinancialStatements_CashFlowStatement_ShortTermDebtPayments_ThreeMonths = 2382

    FinancialStatements_CashFlowStatement_ShortTermDebtPayments_SixMonths = 2383

    FinancialStatements_CashFlowStatement_ShortTermDebtPayments_NineMonths = 2384

    FinancialStatements_CashFlowStatement_ShortTermDebtPayments_TwelveMonths = 2385

    FinancialStatements_CashFlowStatement_ProceedsFromLoans_ThreeMonths = 2386

    FinancialStatements_CashFlowStatement_ProceedsFromLoans_SixMonths = 2387

    FinancialStatements_CashFlowStatement_ProceedsFromLoans_NineMonths = 2388

    FinancialStatements_CashFlowStatement_ProceedsFromLoans_TwelveMonths = 2389

    FinancialStatements_CashFlowStatement_ProceedsFromStockOptionExercised_OneMonth = 2390

    FinancialStatements_CashFlowStatement_ProceedsFromStockOptionExercised_TwoMonths = 2391

    FinancialStatements_CashFlowStatement_ProceedsFromStockOptionExercised_ThreeMonths = 2392

    FinancialStatements_CashFlowStatement_ProceedsFromStockOptionExercised_SixMonths = 2393

    FinancialStatements_CashFlowStatement_ProceedsFromStockOptionExercised_NineMonths = 2394

    FinancialStatements_CashFlowStatement_ProceedsFromStockOptionExercised_TwelveMonths = 2395

    FinancialStatements_CashFlowStatement_CommonStockIssuance_OneMonth = 2396

    FinancialStatements_CashFlowStatement_CommonStockIssuance_TwoMonths = 2397

    FinancialStatements_CashFlowStatement_CommonStockIssuance_ThreeMonths = 2398

    FinancialStatements_CashFlowStatement_CommonStockIssuance_SixMonths = 2399

    FinancialStatements_CashFlowStatement_CommonStockIssuance_NineMonths = 2400

    FinancialStatements_CashFlowStatement_CommonStockIssuance_TwelveMonths = 2401

    FinancialStatements_CashFlowStatement_LongTermDebtIssuance_OneMonth = 2402

    FinancialStatements_CashFlowStatement_LongTermDebtIssuance_TwoMonths = 2403

    FinancialStatements_CashFlowStatement_LongTermDebtIssuance_ThreeMonths = 2404

    FinancialStatements_CashFlowStatement_LongTermDebtIssuance_SixMonths = 2405

    FinancialStatements_CashFlowStatement_LongTermDebtIssuance_NineMonths = 2406

    FinancialStatements_CashFlowStatement_LongTermDebtIssuance_TwelveMonths = 2407

    FinancialStatements_CashFlowStatement_PreferredStockIssuance_OneMonth = 2408

    FinancialStatements_CashFlowStatement_PreferredStockIssuance_TwoMonths = 2409

    FinancialStatements_CashFlowStatement_PreferredStockIssuance_ThreeMonths = 2410

    FinancialStatements_CashFlowStatement_PreferredStockIssuance_SixMonths = 2411

    FinancialStatements_CashFlowStatement_PreferredStockIssuance_NineMonths = 2412

    FinancialStatements_CashFlowStatement_PreferredStockIssuance_TwelveMonths = 2413

    FinancialStatements_CashFlowStatement_ShortTermDebtIssuance_OneMonth = 2414

    FinancialStatements_CashFlowStatement_ShortTermDebtIssuance_TwoMonths = 2415

    FinancialStatements_CashFlowStatement_ShortTermDebtIssuance_ThreeMonths = 2416

    FinancialStatements_CashFlowStatement_ShortTermDebtIssuance_SixMonths = 2417

    FinancialStatements_CashFlowStatement_ShortTermDebtIssuance_NineMonths = 2418

    FinancialStatements_CashFlowStatement_ShortTermDebtIssuance_TwelveMonths = 2419

    FinancialStatements_CashFlowStatement_NetProceedsPaymentForLoan_ThreeMonths = 2420

    FinancialStatements_CashFlowStatement_NetProceedsPaymentForLoan_SixMonths = 2421

    FinancialStatements_CashFlowStatement_NetProceedsPaymentForLoan_NineMonths = 2422

    FinancialStatements_CashFlowStatement_NetProceedsPaymentForLoan_TwelveMonths = 2423

    FinancialStatements_CashFlowStatement_ProceedsPaymentInInterestBearingDepositsInBank_ThreeMonths = 2424

    FinancialStatements_CashFlowStatement_ProceedsPaymentInInterestBearingDepositsInBank_SixMonths = 2425

    FinancialStatements_CashFlowStatement_ProceedsPaymentInInterestBearingDepositsInBank_NineMonths = 2426

    FinancialStatements_CashFlowStatement_ProceedsPaymentInInterestBearingDepositsInBank_TwelveMonths = 2427

    FinancialStatements_CashFlowStatement_PurchaseOfIntangibles_OneMonth = 2428

    FinancialStatements_CashFlowStatement_PurchaseOfIntangibles_TwoMonths = 2429

    FinancialStatements_CashFlowStatement_PurchaseOfIntangibles_ThreeMonths = 2430

    FinancialStatements_CashFlowStatement_PurchaseOfIntangibles_SixMonths = 2431

    FinancialStatements_CashFlowStatement_PurchaseOfIntangibles_NineMonths = 2432

    FinancialStatements_CashFlowStatement_PurchaseOfIntangibles_TwelveMonths = 2433

    FinancialStatements_CashFlowStatement_PurchaseOfInvestment_OneMonth = 2434

    FinancialStatements_CashFlowStatement_PurchaseOfInvestment_TwoMonths = 2435

    FinancialStatements_CashFlowStatement_PurchaseOfInvestment_ThreeMonths = 2436

    FinancialStatements_CashFlowStatement_PurchaseOfInvestment_SixMonths = 2437

    FinancialStatements_CashFlowStatement_PurchaseOfInvestment_NineMonths = 2438

    FinancialStatements_CashFlowStatement_PurchaseOfInvestment_TwelveMonths = 2439

    FinancialStatements_CashFlowStatement_PurchaseOfPPE_OneMonth = 2440

    FinancialStatements_CashFlowStatement_PurchaseOfPPE_TwoMonths = 2441

    FinancialStatements_CashFlowStatement_PurchaseOfPPE_ThreeMonths = 2442

    FinancialStatements_CashFlowStatement_PurchaseOfPPE_SixMonths = 2443

    FinancialStatements_CashFlowStatement_PurchaseOfPPE_NineMonths = 2444

    FinancialStatements_CashFlowStatement_PurchaseOfPPE_TwelveMonths = 2445

    FinancialStatements_CashFlowStatement_PurchaseOfBusiness_OneMonth = 2446

    FinancialStatements_CashFlowStatement_PurchaseOfBusiness_TwoMonths = 2447

    FinancialStatements_CashFlowStatement_PurchaseOfBusiness_ThreeMonths = 2448

    FinancialStatements_CashFlowStatement_PurchaseOfBusiness_SixMonths = 2449

    FinancialStatements_CashFlowStatement_PurchaseOfBusiness_NineMonths = 2450

    FinancialStatements_CashFlowStatement_PurchaseOfBusiness_TwelveMonths = 2451

    FinancialStatements_CashFlowStatement_NetBusinessPurchaseAndSale_OneMonth = 2452

    FinancialStatements_CashFlowStatement_NetBusinessPurchaseAndSale_TwoMonths = 2453

    FinancialStatements_CashFlowStatement_NetBusinessPurchaseAndSale_ThreeMonths = 2454

    FinancialStatements_CashFlowStatement_NetBusinessPurchaseAndSale_SixMonths = 2455

    FinancialStatements_CashFlowStatement_NetBusinessPurchaseAndSale_NineMonths = 2456

    FinancialStatements_CashFlowStatement_NetBusinessPurchaseAndSale_TwelveMonths = 2457

    FinancialStatements_CashFlowStatement_NetIntangiblesPurchaseAndSale_OneMonth = 2458

    FinancialStatements_CashFlowStatement_NetIntangiblesPurchaseAndSale_TwoMonths = 2459

    FinancialStatements_CashFlowStatement_NetIntangiblesPurchaseAndSale_ThreeMonths = 2460

    FinancialStatements_CashFlowStatement_NetIntangiblesPurchaseAndSale_SixMonths = 2461

    FinancialStatements_CashFlowStatement_NetIntangiblesPurchaseAndSale_NineMonths = 2462

    FinancialStatements_CashFlowStatement_NetIntangiblesPurchaseAndSale_TwelveMonths = 2463

    FinancialStatements_CashFlowStatement_NetInvestmentPurchaseAndSale_OneMonth = 2464

    FinancialStatements_CashFlowStatement_NetInvestmentPurchaseAndSale_TwoMonths = 2465

    FinancialStatements_CashFlowStatement_NetInvestmentPurchaseAndSale_ThreeMonths = 2466

    FinancialStatements_CashFlowStatement_NetInvestmentPurchaseAndSale_SixMonths = 2467

    FinancialStatements_CashFlowStatement_NetInvestmentPurchaseAndSale_NineMonths = 2468

    FinancialStatements_CashFlowStatement_NetInvestmentPurchaseAndSale_TwelveMonths = 2469

    FinancialStatements_CashFlowStatement_NetPPEPurchaseAndSale_OneMonth = 2470

    FinancialStatements_CashFlowStatement_NetPPEPurchaseAndSale_TwoMonths = 2471

    FinancialStatements_CashFlowStatement_NetPPEPurchaseAndSale_ThreeMonths = 2472

    FinancialStatements_CashFlowStatement_NetPPEPurchaseAndSale_SixMonths = 2473

    FinancialStatements_CashFlowStatement_NetPPEPurchaseAndSale_NineMonths = 2474

    FinancialStatements_CashFlowStatement_NetPPEPurchaseAndSale_TwelveMonths = 2475

    FinancialStatements_CashFlowStatement_SaleOfBusiness_OneMonth = 2476

    FinancialStatements_CashFlowStatement_SaleOfBusiness_TwoMonths = 2477

    FinancialStatements_CashFlowStatement_SaleOfBusiness_ThreeMonths = 2478

    FinancialStatements_CashFlowStatement_SaleOfBusiness_SixMonths = 2479

    FinancialStatements_CashFlowStatement_SaleOfBusiness_NineMonths = 2480

    FinancialStatements_CashFlowStatement_SaleOfBusiness_TwelveMonths = 2481

    FinancialStatements_CashFlowStatement_SaleOfIntangibles_OneMonth = 2482

    FinancialStatements_CashFlowStatement_SaleOfIntangibles_ThreeMonths = 2483

    FinancialStatements_CashFlowStatement_SaleOfIntangibles_SixMonths = 2484

    FinancialStatements_CashFlowStatement_SaleOfIntangibles_NineMonths = 2485

    FinancialStatements_CashFlowStatement_SaleOfIntangibles_TwelveMonths = 2486

    FinancialStatements_CashFlowStatement_SaleOfInvestment_OneMonth = 2487

    FinancialStatements_CashFlowStatement_SaleOfInvestment_TwoMonths = 2488

    FinancialStatements_CashFlowStatement_SaleOfInvestment_ThreeMonths = 2489

    FinancialStatements_CashFlowStatement_SaleOfInvestment_SixMonths = 2490

    FinancialStatements_CashFlowStatement_SaleOfInvestment_NineMonths = 2491

    FinancialStatements_CashFlowStatement_SaleOfInvestment_TwelveMonths = 2492

    FinancialStatements_CashFlowStatement_SaleOfPPE_OneMonth = 2493

    FinancialStatements_CashFlowStatement_SaleOfPPE_TwoMonths = 2494

    FinancialStatements_CashFlowStatement_SaleOfPPE_ThreeMonths = 2495

    FinancialStatements_CashFlowStatement_SaleOfPPE_SixMonths = 2496

    FinancialStatements_CashFlowStatement_SaleOfPPE_NineMonths = 2497

    FinancialStatements_CashFlowStatement_SaleOfPPE_TwelveMonths = 2498

    FinancialStatements_CashFlowStatement_ChangesInAccountReceivables_OneMonth = 2499

    FinancialStatements_CashFlowStatement_ChangesInAccountReceivables_TwoMonths = 2500

    FinancialStatements_CashFlowStatement_ChangesInAccountReceivables_ThreeMonths = 2501

    FinancialStatements_CashFlowStatement_ChangesInAccountReceivables_SixMonths = 2502

    FinancialStatements_CashFlowStatement_ChangesInAccountReceivables_NineMonths = 2503

    FinancialStatements_CashFlowStatement_ChangesInAccountReceivables_TwelveMonths = 2504

    FinancialStatements_CashFlowStatement_AmortizationOfFinancingCostsAndDiscounts_OneMonth = 2505

    FinancialStatements_CashFlowStatement_AmortizationOfFinancingCostsAndDiscounts_TwoMonths = 2506

    FinancialStatements_CashFlowStatement_AmortizationOfFinancingCostsAndDiscounts_ThreeMonths = 2507

    FinancialStatements_CashFlowStatement_AmortizationOfFinancingCostsAndDiscounts_SixMonths = 2508

    FinancialStatements_CashFlowStatement_AmortizationOfFinancingCostsAndDiscounts_NineMonths = 2509

    FinancialStatements_CashFlowStatement_AmortizationOfFinancingCostsAndDiscounts_TwelveMonths = 2510

    FinancialStatements_CashFlowStatement_AmortizationOfSecurities_OneMonth = 2511

    FinancialStatements_CashFlowStatement_AmortizationOfSecurities_TwoMonths = 2512

    FinancialStatements_CashFlowStatement_AmortizationOfSecurities_ThreeMonths = 2513

    FinancialStatements_CashFlowStatement_AmortizationOfSecurities_SixMonths = 2514

    FinancialStatements_CashFlowStatement_AmortizationOfSecurities_NineMonths = 2515

    FinancialStatements_CashFlowStatement_AmortizationOfSecurities_TwelveMonths = 2516

    FinancialStatements_CashFlowStatement_AssetImpairmentCharge_OneMonth = 2517

    FinancialStatements_CashFlowStatement_AssetImpairmentCharge_TwoMonths = 2518

    FinancialStatements_CashFlowStatement_AssetImpairmentCharge_ThreeMonths = 2519

    FinancialStatements_CashFlowStatement_AssetImpairmentCharge_SixMonths = 2520

    FinancialStatements_CashFlowStatement_AssetImpairmentCharge_NineMonths = 2521

    FinancialStatements_CashFlowStatement_AssetImpairmentCharge_TwelveMonths = 2522

    FinancialStatements_CashFlowStatement_ChangeInDividendPayable_ThreeMonths = 2523

    FinancialStatements_CashFlowStatement_ChangeInDividendPayable_SixMonths = 2524

    FinancialStatements_CashFlowStatement_ChangeInDividendPayable_NineMonths = 2525

    FinancialStatements_CashFlowStatement_ChangeInDividendPayable_TwelveMonths = 2526

    FinancialStatements_CashFlowStatement_ChangeInDeferredCharges_ThreeMonths = 2527

    FinancialStatements_CashFlowStatement_ChangeInDeferredCharges_SixMonths = 2528

    FinancialStatements_CashFlowStatement_ChangeInDeferredCharges_NineMonths = 2529

    FinancialStatements_CashFlowStatement_ChangeInDeferredCharges_TwelveMonths = 2530

    FinancialStatements_CashFlowStatement_ChangeInOtherCurrentAssets_OneMonth = 2531

    FinancialStatements_CashFlowStatement_ChangeInOtherCurrentAssets_TwoMonths = 2532

    FinancialStatements_CashFlowStatement_ChangeInOtherCurrentAssets_ThreeMonths = 2533

    FinancialStatements_CashFlowStatement_ChangeInOtherCurrentAssets_SixMonths = 2534

    FinancialStatements_CashFlowStatement_ChangeInOtherCurrentAssets_NineMonths = 2535

    FinancialStatements_CashFlowStatement_ChangeInOtherCurrentAssets_TwelveMonths = 2536

    FinancialStatements_CashFlowStatement_ChangeInOtherCurrentLiabilities_OneMonth = 2537

    FinancialStatements_CashFlowStatement_ChangeInOtherCurrentLiabilities_TwoMonths = 2538

    FinancialStatements_CashFlowStatement_ChangeInOtherCurrentLiabilities_ThreeMonths = 2539

    FinancialStatements_CashFlowStatement_ChangeInOtherCurrentLiabilities_SixMonths = 2540

    FinancialStatements_CashFlowStatement_ChangeInOtherCurrentLiabilities_NineMonths = 2541

    FinancialStatements_CashFlowStatement_ChangeInOtherCurrentLiabilities_TwelveMonths = 2542

    FinancialStatements_CashFlowStatement_ChangeInOtherWorkingCapital_OneMonth = 2543

    FinancialStatements_CashFlowStatement_ChangeInOtherWorkingCapital_TwoMonths = 2544

    FinancialStatements_CashFlowStatement_ChangeInOtherWorkingCapital_ThreeMonths = 2545

    FinancialStatements_CashFlowStatement_ChangeInOtherWorkingCapital_SixMonths = 2546

    FinancialStatements_CashFlowStatement_ChangeInOtherWorkingCapital_NineMonths = 2547

    FinancialStatements_CashFlowStatement_ChangeInOtherWorkingCapital_TwelveMonths = 2548

    FinancialStatements_CashFlowStatement_ChangeInUnearnedPremiums_ThreeMonths = 2549

    FinancialStatements_CashFlowStatement_ChangeInUnearnedPremiums_SixMonths = 2550

    FinancialStatements_CashFlowStatement_ChangeInUnearnedPremiums_NineMonths = 2551

    FinancialStatements_CashFlowStatement_ChangeInUnearnedPremiums_TwelveMonths = 2552

    FinancialStatements_CashFlowStatement_CommonStockDividendPaid_OneMonth = 2553

    FinancialStatements_CashFlowStatement_CommonStockDividendPaid_TwoMonths = 2554

    FinancialStatements_CashFlowStatement_CommonStockDividendPaid_ThreeMonths = 2555

    FinancialStatements_CashFlowStatement_CommonStockDividendPaid_SixMonths = 2556

    FinancialStatements_CashFlowStatement_CommonStockDividendPaid_NineMonths = 2557

    FinancialStatements_CashFlowStatement_CommonStockDividendPaid_TwelveMonths = 2558

    FinancialStatements_CashFlowStatement_EarningsLossesFromEquityInvestments_OneMonth = 2559

    FinancialStatements_CashFlowStatement_EarningsLossesFromEquityInvestments_TwoMonths = 2560

    FinancialStatements_CashFlowStatement_EarningsLossesFromEquityInvestments_ThreeMonths = 2561

    FinancialStatements_CashFlowStatement_EarningsLossesFromEquityInvestments_SixMonths = 2562

    FinancialStatements_CashFlowStatement_EarningsLossesFromEquityInvestments_NineMonths = 2563

    FinancialStatements_CashFlowStatement_EarningsLossesFromEquityInvestments_TwelveMonths = 2564

    FinancialStatements_CashFlowStatement_ExcessTaxBenefitFromStockBasedCompensation_TwoMonths = 2565

    FinancialStatements_CashFlowStatement_ExcessTaxBenefitFromStockBasedCompensation_ThreeMonths = 2566

    FinancialStatements_CashFlowStatement_ExcessTaxBenefitFromStockBasedCompensation_SixMonths = 2567

    FinancialStatements_CashFlowStatement_ExcessTaxBenefitFromStockBasedCompensation_NineMonths = 2568

    FinancialStatements_CashFlowStatement_ExcessTaxBenefitFromStockBasedCompensation_TwelveMonths = 2569

    FinancialStatements_CashFlowStatement_GainLossOnInvestmentSecurities_OneMonth = 2570

    FinancialStatements_CashFlowStatement_GainLossOnInvestmentSecurities_TwoMonths = 2571

    FinancialStatements_CashFlowStatement_GainLossOnInvestmentSecurities_ThreeMonths = 2572

    FinancialStatements_CashFlowStatement_GainLossOnInvestmentSecurities_SixMonths = 2573

    FinancialStatements_CashFlowStatement_GainLossOnInvestmentSecurities_NineMonths = 2574

    FinancialStatements_CashFlowStatement_GainLossOnInvestmentSecurities_TwelveMonths = 2575

    FinancialStatements_CashFlowStatement_GainLossOnSaleOfBusiness_OneMonth = 2576

    FinancialStatements_CashFlowStatement_GainLossOnSaleOfBusiness_TwoMonths = 2577

    FinancialStatements_CashFlowStatement_GainLossOnSaleOfBusiness_ThreeMonths = 2578

    FinancialStatements_CashFlowStatement_GainLossOnSaleOfBusiness_SixMonths = 2579

    FinancialStatements_CashFlowStatement_GainLossOnSaleOfBusiness_NineMonths = 2580

    FinancialStatements_CashFlowStatement_GainLossOnSaleOfBusiness_TwelveMonths = 2581

    FinancialStatements_CashFlowStatement_GainLossOnSaleOfPPE_OneMonth = 2582

    FinancialStatements_CashFlowStatement_GainLossOnSaleOfPPE_TwoMonths = 2583

    FinancialStatements_CashFlowStatement_GainLossOnSaleOfPPE_ThreeMonths = 2584

    FinancialStatements_CashFlowStatement_GainLossOnSaleOfPPE_SixMonths = 2585

    FinancialStatements_CashFlowStatement_GainLossOnSaleOfPPE_NineMonths = 2586

    FinancialStatements_CashFlowStatement_GainLossOnSaleOfPPE_TwelveMonths = 2587

    FinancialStatements_CashFlowStatement_InterestCreditedOnPolicyholderDeposits_ThreeMonths = 2588

    FinancialStatements_CashFlowStatement_InterestCreditedOnPolicyholderDeposits_SixMonths = 2589

    FinancialStatements_CashFlowStatement_InterestCreditedOnPolicyholderDeposits_NineMonths = 2590

    FinancialStatements_CashFlowStatement_InterestCreditedOnPolicyholderDeposits_TwelveMonths = 2591

    FinancialStatements_CashFlowStatement_CashFromDiscontinuedOperatingActivities_ThreeMonths = 2592

    FinancialStatements_CashFlowStatement_CashFromDiscontinuedOperatingActivities_SixMonths = 2593

    FinancialStatements_CashFlowStatement_CashFromDiscontinuedOperatingActivities_NineMonths = 2594

    FinancialStatements_CashFlowStatement_CashFromDiscontinuedOperatingActivities_TwelveMonths = 2595

    FinancialStatements_CashFlowStatement_OperatingGainsLosses_OneMonth = 2596

    FinancialStatements_CashFlowStatement_OperatingGainsLosses_TwoMonths = 2597

    FinancialStatements_CashFlowStatement_OperatingGainsLosses_ThreeMonths = 2598

    FinancialStatements_CashFlowStatement_OperatingGainsLosses_SixMonths = 2599

    FinancialStatements_CashFlowStatement_OperatingGainsLosses_NineMonths = 2600

    FinancialStatements_CashFlowStatement_OperatingGainsLosses_TwelveMonths = 2601

    FinancialStatements_CashFlowStatement_NetOtherFinancingCharges_OneMonth = 2602

    FinancialStatements_CashFlowStatement_NetOtherFinancingCharges_TwoMonths = 2603

    FinancialStatements_CashFlowStatement_NetOtherFinancingCharges_ThreeMonths = 2604

    FinancialStatements_CashFlowStatement_NetOtherFinancingCharges_SixMonths = 2605

    FinancialStatements_CashFlowStatement_NetOtherFinancingCharges_NineMonths = 2606

    FinancialStatements_CashFlowStatement_NetOtherFinancingCharges_TwelveMonths = 2607

    FinancialStatements_CashFlowStatement_NetOtherInvestingChanges_OneMonth = 2608

    FinancialStatements_CashFlowStatement_NetOtherInvestingChanges_TwoMonths = 2609

    FinancialStatements_CashFlowStatement_NetOtherInvestingChanges_ThreeMonths = 2610

    FinancialStatements_CashFlowStatement_NetOtherInvestingChanges_SixMonths = 2611

    FinancialStatements_CashFlowStatement_NetOtherInvestingChanges_NineMonths = 2612

    FinancialStatements_CashFlowStatement_NetOtherInvestingChanges_TwelveMonths = 2613

    FinancialStatements_CashFlowStatement_OtherNonCashItems_OneMonth = 2614

    FinancialStatements_CashFlowStatement_OtherNonCashItems_TwoMonths = 2615

    FinancialStatements_CashFlowStatement_OtherNonCashItems_ThreeMonths = 2616

    FinancialStatements_CashFlowStatement_OtherNonCashItems_SixMonths = 2617

    FinancialStatements_CashFlowStatement_OtherNonCashItems_NineMonths = 2618

    FinancialStatements_CashFlowStatement_OtherNonCashItems_TwelveMonths = 2619

    FinancialStatements_CashFlowStatement_PensionAndEmployeeBenefitExpense_OneMonth = 2620

    FinancialStatements_CashFlowStatement_PensionAndEmployeeBenefitExpense_TwoMonths = 2621

    FinancialStatements_CashFlowStatement_PensionAndEmployeeBenefitExpense_ThreeMonths = 2622

    FinancialStatements_CashFlowStatement_PensionAndEmployeeBenefitExpense_SixMonths = 2623

    FinancialStatements_CashFlowStatement_PensionAndEmployeeBenefitExpense_NineMonths = 2624

    FinancialStatements_CashFlowStatement_PensionAndEmployeeBenefitExpense_TwelveMonths = 2625

    FinancialStatements_CashFlowStatement_PreferredStockDividendPaid_OneMonth = 2626

    FinancialStatements_CashFlowStatement_PreferredStockDividendPaid_TwoMonths = 2627

    FinancialStatements_CashFlowStatement_PreferredStockDividendPaid_ThreeMonths = 2628

    FinancialStatements_CashFlowStatement_PreferredStockDividendPaid_SixMonths = 2629

    FinancialStatements_CashFlowStatement_PreferredStockDividendPaid_NineMonths = 2630

    FinancialStatements_CashFlowStatement_PreferredStockDividendPaid_TwelveMonths = 2631

    FinancialStatements_CashFlowStatement_ProceedsPaymentFederalFundsSoldAndSecuritiesPurchasedUnderAgreementToResell_ThreeMonths = 2632

    FinancialStatements_CashFlowStatement_ProceedsPaymentFederalFundsSoldAndSecuritiesPurchasedUnderAgreementToResell_SixMonths = 2633

    FinancialStatements_CashFlowStatement_ProceedsPaymentFederalFundsSoldAndSecuritiesPurchasedUnderAgreementToResell_NineMonths = 2634

    FinancialStatements_CashFlowStatement_ProceedsPaymentFederalFundsSoldAndSecuritiesPurchasedUnderAgreementToResell_TwelveMonths = 2635

    FinancialStatements_CashFlowStatement_ProvisionForLoanLeaseAndOtherLosses_ThreeMonths = 2636

    FinancialStatements_CashFlowStatement_ProvisionForLoanLeaseAndOtherLosses_SixMonths = 2637

    FinancialStatements_CashFlowStatement_ProvisionForLoanLeaseAndOtherLosses_NineMonths = 2638

    FinancialStatements_CashFlowStatement_ProvisionForLoanLeaseAndOtherLosses_TwelveMonths = 2639

    FinancialStatements_CashFlowStatement_RealizedGainLossOnSaleOfLoansAndLease_OneMonth = 2640

    FinancialStatements_CashFlowStatement_RealizedGainLossOnSaleOfLoansAndLease_ThreeMonths = 2641

    FinancialStatements_CashFlowStatement_RealizedGainLossOnSaleOfLoansAndLease_SixMonths = 2642

    FinancialStatements_CashFlowStatement_RealizedGainLossOnSaleOfLoansAndLease_NineMonths = 2643

    FinancialStatements_CashFlowStatement_RealizedGainLossOnSaleOfLoansAndLease_TwelveMonths = 2644

    FinancialStatements_CashFlowStatement_StockBasedCompensation_OneMonth = 2645

    FinancialStatements_CashFlowStatement_StockBasedCompensation_TwoMonths = 2646

    FinancialStatements_CashFlowStatement_StockBasedCompensation_ThreeMonths = 2647

    FinancialStatements_CashFlowStatement_StockBasedCompensation_SixMonths = 2648

    FinancialStatements_CashFlowStatement_StockBasedCompensation_NineMonths = 2649

    FinancialStatements_CashFlowStatement_StockBasedCompensation_TwelveMonths = 2650

    FinancialStatements_CashFlowStatement_UnrealizedGainLossOnInvestmentSecurities_OneMonth = 2651

    FinancialStatements_CashFlowStatement_UnrealizedGainLossOnInvestmentSecurities_TwoMonths = 2652

    FinancialStatements_CashFlowStatement_UnrealizedGainLossOnInvestmentSecurities_ThreeMonths = 2653

    FinancialStatements_CashFlowStatement_UnrealizedGainLossOnInvestmentSecurities_SixMonths = 2654

    FinancialStatements_CashFlowStatement_UnrealizedGainLossOnInvestmentSecurities_NineMonths = 2655

    FinancialStatements_CashFlowStatement_UnrealizedGainLossOnInvestmentSecurities_TwelveMonths = 2656

    FinancialStatements_CashFlowStatement_UnrealizedGainsLossesOnDerivatives_ThreeMonths = 2657

    FinancialStatements_CashFlowStatement_UnrealizedGainsLossesOnDerivatives_TwelveMonths = 2658

    FinancialStatements_CashFlowStatement_AmortizationOfIntangibles_OneMonth = 2659

    FinancialStatements_CashFlowStatement_AmortizationOfIntangibles_TwoMonths = 2660

    FinancialStatements_CashFlowStatement_AmortizationOfIntangibles_ThreeMonths = 2661

    FinancialStatements_CashFlowStatement_AmortizationOfIntangibles_SixMonths = 2662

    FinancialStatements_CashFlowStatement_AmortizationOfIntangibles_NineMonths = 2663

    FinancialStatements_CashFlowStatement_AmortizationOfIntangibles_TwelveMonths = 2664

    FinancialStatements_CashFlowStatement_IncomeTaxPaidSupplementalData_OneMonth = 2665

    FinancialStatements_CashFlowStatement_IncomeTaxPaidSupplementalData_TwoMonths = 2666

    FinancialStatements_CashFlowStatement_IncomeTaxPaidSupplementalData_ThreeMonths = 2667

    FinancialStatements_CashFlowStatement_IncomeTaxPaidSupplementalData_SixMonths = 2668

    FinancialStatements_CashFlowStatement_IncomeTaxPaidSupplementalData_NineMonths = 2669

    FinancialStatements_CashFlowStatement_IncomeTaxPaidSupplementalData_TwelveMonths = 2670

    FinancialStatements_CashFlowStatement_InterestPaidSupplementalData_OneMonth = 2671

    FinancialStatements_CashFlowStatement_InterestPaidSupplementalData_TwoMonths = 2672

    FinancialStatements_CashFlowStatement_InterestPaidSupplementalData_ThreeMonths = 2673

    FinancialStatements_CashFlowStatement_InterestPaidSupplementalData_SixMonths = 2674

    FinancialStatements_CashFlowStatement_InterestPaidSupplementalData_NineMonths = 2675

    FinancialStatements_CashFlowStatement_InterestPaidSupplementalData_TwelveMonths = 2676

    FinancialStatements_CashFlowStatement_IssuanceOfCapitalStock_OneMonth = 2677

    FinancialStatements_CashFlowStatement_IssuanceOfCapitalStock_TwoMonths = 2678

    FinancialStatements_CashFlowStatement_IssuanceOfCapitalStock_ThreeMonths = 2679

    FinancialStatements_CashFlowStatement_IssuanceOfCapitalStock_SixMonths = 2680

    FinancialStatements_CashFlowStatement_IssuanceOfCapitalStock_NineMonths = 2681

    FinancialStatements_CashFlowStatement_IssuanceOfCapitalStock_TwelveMonths = 2682

    FinancialStatements_CashFlowStatement_IssuanceOfDebt_OneMonth = 2683

    FinancialStatements_CashFlowStatement_IssuanceOfDebt_TwoMonths = 2684

    FinancialStatements_CashFlowStatement_IssuanceOfDebt_ThreeMonths = 2685

    FinancialStatements_CashFlowStatement_IssuanceOfDebt_SixMonths = 2686

    FinancialStatements_CashFlowStatement_IssuanceOfDebt_NineMonths = 2687

    FinancialStatements_CashFlowStatement_IssuanceOfDebt_TwelveMonths = 2688

    FinancialStatements_CashFlowStatement_RepaymentOfDebt_OneMonth = 2689

    FinancialStatements_CashFlowStatement_RepaymentOfDebt_TwoMonths = 2690

    FinancialStatements_CashFlowStatement_RepaymentOfDebt_ThreeMonths = 2691

    FinancialStatements_CashFlowStatement_RepaymentOfDebt_SixMonths = 2692

    FinancialStatements_CashFlowStatement_RepaymentOfDebt_NineMonths = 2693

    FinancialStatements_CashFlowStatement_RepaymentOfDebt_TwelveMonths = 2694

    FinancialStatements_CashFlowStatement_RepurchaseOfCapitalStock_OneMonth = 2695

    FinancialStatements_CashFlowStatement_RepurchaseOfCapitalStock_TwoMonths = 2696

    FinancialStatements_CashFlowStatement_RepurchaseOfCapitalStock_ThreeMonths = 2697

    FinancialStatements_CashFlowStatement_RepurchaseOfCapitalStock_SixMonths = 2698

    FinancialStatements_CashFlowStatement_RepurchaseOfCapitalStock_NineMonths = 2699

    FinancialStatements_CashFlowStatement_RepurchaseOfCapitalStock_TwelveMonths = 2700

    FinancialStatements_CashFlowStatement_FreeCashFlow_OneMonth = 2701

    FinancialStatements_CashFlowStatement_FreeCashFlow_TwoMonths = 2702

    FinancialStatements_CashFlowStatement_FreeCashFlow_ThreeMonths = 2703

    FinancialStatements_CashFlowStatement_FreeCashFlow_SixMonths = 2704

    FinancialStatements_CashFlowStatement_FreeCashFlow_NineMonths = 2705

    FinancialStatements_CashFlowStatement_FreeCashFlow_TwelveMonths = 2706

    FinancialStatements_CashFlowStatement_DecreaseinInterestBearingDepositsinBank_ThreeMonths = 2707

    FinancialStatements_CashFlowStatement_DecreaseinInterestBearingDepositsinBank_SixMonths = 2708

    FinancialStatements_CashFlowStatement_DecreaseinInterestBearingDepositsinBank_NineMonths = 2709

    FinancialStatements_CashFlowStatement_DecreaseinInterestBearingDepositsinBank_TwelveMonths = 2710

    FinancialStatements_CashFlowStatement_IncreaseinInterestBearingDepositsinBank_ThreeMonths = 2711

    FinancialStatements_CashFlowStatement_IncreaseinInterestBearingDepositsinBank_SixMonths = 2712

    FinancialStatements_CashFlowStatement_IncreaseinInterestBearingDepositsinBank_NineMonths = 2713

    FinancialStatements_CashFlowStatement_IncreaseinInterestBearingDepositsinBank_TwelveMonths = 2714

    FinancialStatements_CashFlowStatement_InterestReceivedCFO_ThreeMonths = 2715

    FinancialStatements_CashFlowStatement_InterestReceivedCFO_SixMonths = 2716

    FinancialStatements_CashFlowStatement_InterestReceivedCFO_NineMonths = 2717

    FinancialStatements_CashFlowStatement_InterestReceivedCFO_TwelveMonths = 2718

    FinancialStatements_CashFlowStatement_InterestPaidCFO_ThreeMonths = 2719

    FinancialStatements_CashFlowStatement_InterestPaidCFO_SixMonths = 2720

    FinancialStatements_CashFlowStatement_InterestPaidCFO_NineMonths = 2721

    FinancialStatements_CashFlowStatement_InterestPaidCFO_TwelveMonths = 2722

    FinancialStatements_CashFlowStatement_PurchaseofSubsidiaries_ThreeMonths = 2723

    FinancialStatements_CashFlowStatement_PurchaseofSubsidiaries_SixMonths = 2724

    FinancialStatements_CashFlowStatement_PurchaseofSubsidiaries_NineMonths = 2725

    FinancialStatements_CashFlowStatement_PurchaseofSubsidiaries_TwelveMonths = 2726

    FinancialStatements_CashFlowStatement_PurchaseofJointVentureAssociate_ThreeMonths = 2727

    FinancialStatements_CashFlowStatement_PurchaseofJointVentureAssociate_SixMonths = 2728

    FinancialStatements_CashFlowStatement_PurchaseofJointVentureAssociate_NineMonths = 2729

    FinancialStatements_CashFlowStatement_PurchaseofJointVentureAssociate_TwelveMonths = 2730

    FinancialStatements_CashFlowStatement_SaleofSubsidiaries_SixMonths = 2731

    FinancialStatements_CashFlowStatement_SaleofSubsidiaries_TwelveMonths = 2732

    FinancialStatements_CashFlowStatement_SaleofJointVentureAssociate_ThreeMonths = 2733

    FinancialStatements_CashFlowStatement_SaleofJointVentureAssociate_SixMonths = 2734

    FinancialStatements_CashFlowStatement_SaleofJointVentureAssociate_NineMonths = 2735

    FinancialStatements_CashFlowStatement_SaleofJointVentureAssociate_TwelveMonths = 2736

    FinancialStatements_CashFlowStatement_IncreaseDecreaseinLeaseFinancing_ThreeMonths = 2737

    FinancialStatements_CashFlowStatement_IncreaseDecreaseinLeaseFinancing_SixMonths = 2738

    FinancialStatements_CashFlowStatement_IncreaseDecreaseinLeaseFinancing_NineMonths = 2739

    FinancialStatements_CashFlowStatement_IncreaseDecreaseinLeaseFinancing_TwelveMonths = 2740

    FinancialStatements_CashFlowStatement_IncreaseinLeaseFinancing_SixMonths = 2741

    FinancialStatements_CashFlowStatement_IncreaseinLeaseFinancing_TwelveMonths = 2742

    FinancialStatements_CashFlowStatement_RepaymentinLeaseFinancing_ThreeMonths = 2743

    FinancialStatements_CashFlowStatement_RepaymentinLeaseFinancing_SixMonths = 2744

    FinancialStatements_CashFlowStatement_RepaymentinLeaseFinancing_NineMonths = 2745

    FinancialStatements_CashFlowStatement_RepaymentinLeaseFinancing_TwelveMonths = 2746

    FinancialStatements_CashFlowStatement_ShareofAssociates_ThreeMonths = 2747

    FinancialStatements_CashFlowStatement_ShareofAssociates_SixMonths = 2748

    FinancialStatements_CashFlowStatement_ShareofAssociates_NineMonths = 2749

    FinancialStatements_CashFlowStatement_ShareofAssociates_TwelveMonths = 2750

    FinancialStatements_CashFlowStatement_ProfitonDisposals_ThreeMonths = 2751

    FinancialStatements_CashFlowStatement_ProfitonDisposals_SixMonths = 2752

    FinancialStatements_CashFlowStatement_ProfitonDisposals_NineMonths = 2753

    FinancialStatements_CashFlowStatement_ProfitonDisposals_TwelveMonths = 2754

    FinancialStatements_CashFlowStatement_ReorganizationOtherCosts_ThreeMonths = 2755

    FinancialStatements_CashFlowStatement_ReorganizationOtherCosts_SixMonths = 2756

    FinancialStatements_CashFlowStatement_ReorganizationOtherCosts_NineMonths = 2757

    FinancialStatements_CashFlowStatement_ReorganizationOtherCosts_TwelveMonths = 2758

    FinancialStatements_CashFlowStatement_NetOutwardLoans_TwelveMonths = 2759

    FinancialStatements_CashFlowStatement_IssueExpenses_TwoMonths = 2760

    FinancialStatements_CashFlowStatement_IssueExpenses_ThreeMonths = 2761

    FinancialStatements_CashFlowStatement_IssueExpenses_SixMonths = 2762

    FinancialStatements_CashFlowStatement_IssueExpenses_NineMonths = 2763

    FinancialStatements_CashFlowStatement_IssueExpenses_TwelveMonths = 2764

    FinancialStatements_CashFlowStatement_ChangeinDepositsbyBanksandCustomers_TwelveMonths = 2765

    FinancialStatements_CashFlowStatement_CashFlowsfromusedinOperatingActivitiesDirect_OneMonth = 2766

    FinancialStatements_CashFlowStatement_CashFlowsfromusedinOperatingActivitiesDirect_ThreeMonths = 2767

    FinancialStatements_CashFlowStatement_CashFlowsfromusedinOperatingActivitiesDirect_SixMonths = 2768

    FinancialStatements_CashFlowStatement_CashFlowsfromusedinOperatingActivitiesDirect_NineMonths = 2769

    FinancialStatements_CashFlowStatement_CashFlowsfromusedinOperatingActivitiesDirect_TwelveMonths = 2770

    FinancialStatements_CashFlowStatement_ClassesofCashReceiptsfromOperatingActivities_OneMonth = 2771

    FinancialStatements_CashFlowStatement_ClassesofCashReceiptsfromOperatingActivities_ThreeMonths = 2772

    FinancialStatements_CashFlowStatement_ClassesofCashReceiptsfromOperatingActivities_SixMonths = 2773

    FinancialStatements_CashFlowStatement_ClassesofCashReceiptsfromOperatingActivities_NineMonths = 2774

    FinancialStatements_CashFlowStatement_ClassesofCashReceiptsfromOperatingActivities_TwelveMonths = 2775

    FinancialStatements_CashFlowStatement_OtherCashReceiptsfromOperatingActivities_OneMonth = 2776

    FinancialStatements_CashFlowStatement_OtherCashReceiptsfromOperatingActivities_ThreeMonths = 2777

    FinancialStatements_CashFlowStatement_OtherCashReceiptsfromOperatingActivities_SixMonths = 2778

    FinancialStatements_CashFlowStatement_OtherCashReceiptsfromOperatingActivities_NineMonths = 2779

    FinancialStatements_CashFlowStatement_OtherCashReceiptsfromOperatingActivities_TwelveMonths = 2780

    FinancialStatements_CashFlowStatement_ClassesofCashPayments_OneMonth = 2781

    FinancialStatements_CashFlowStatement_ClassesofCashPayments_ThreeMonths = 2782

    FinancialStatements_CashFlowStatement_ClassesofCashPayments_SixMonths = 2783

    FinancialStatements_CashFlowStatement_ClassesofCashPayments_NineMonths = 2784

    FinancialStatements_CashFlowStatement_ClassesofCashPayments_TwelveMonths = 2785

    FinancialStatements_CashFlowStatement_PaymentstoSuppliersforGoodsandServices_ThreeMonths = 2786

    FinancialStatements_CashFlowStatement_PaymentstoSuppliersforGoodsandServices_SixMonths = 2787

    FinancialStatements_CashFlowStatement_PaymentstoSuppliersforGoodsandServices_NineMonths = 2788

    FinancialStatements_CashFlowStatement_PaymentstoSuppliersforGoodsandServices_TwelveMonths = 2789

    FinancialStatements_CashFlowStatement_PaymentsonBehalfofEmployees_ThreeMonths = 2790

    FinancialStatements_CashFlowStatement_PaymentsonBehalfofEmployees_SixMonths = 2791

    FinancialStatements_CashFlowStatement_PaymentsonBehalfofEmployees_NineMonths = 2792

    FinancialStatements_CashFlowStatement_PaymentsonBehalfofEmployees_TwelveMonths = 2793

    FinancialStatements_CashFlowStatement_OtherCashPaymentsfromOperatingActivities_OneMonth = 2794

    FinancialStatements_CashFlowStatement_OtherCashPaymentsfromOperatingActivities_ThreeMonths = 2795

    FinancialStatements_CashFlowStatement_OtherCashPaymentsfromOperatingActivities_SixMonths = 2796

    FinancialStatements_CashFlowStatement_OtherCashPaymentsfromOperatingActivities_NineMonths = 2797

    FinancialStatements_CashFlowStatement_OtherCashPaymentsfromOperatingActivities_TwelveMonths = 2798

    FinancialStatements_CashFlowStatement_DividendsPaidDirect_TwelveMonths = 2799

    FinancialStatements_CashFlowStatement_DividendsReceivedDirect_ThreeMonths = 2800

    FinancialStatements_CashFlowStatement_DividendsReceivedDirect_SixMonths = 2801

    FinancialStatements_CashFlowStatement_DividendsReceivedDirect_NineMonths = 2802

    FinancialStatements_CashFlowStatement_DividendsReceivedDirect_TwelveMonths = 2803

    FinancialStatements_CashFlowStatement_InterestPaidDirect_ThreeMonths = 2804

    FinancialStatements_CashFlowStatement_InterestPaidDirect_SixMonths = 2805

    FinancialStatements_CashFlowStatement_InterestPaidDirect_NineMonths = 2806

    FinancialStatements_CashFlowStatement_InterestPaidDirect_TwelveMonths = 2807

    FinancialStatements_CashFlowStatement_InterestReceivedDirect_ThreeMonths = 2808

    FinancialStatements_CashFlowStatement_InterestReceivedDirect_SixMonths = 2809

    FinancialStatements_CashFlowStatement_InterestReceivedDirect_NineMonths = 2810

    FinancialStatements_CashFlowStatement_InterestReceivedDirect_TwelveMonths = 2811

    FinancialStatements_CashFlowStatement_TaxesRefundPaidDirect_ThreeMonths = 2812

    FinancialStatements_CashFlowStatement_TaxesRefundPaidDirect_SixMonths = 2813

    FinancialStatements_CashFlowStatement_TaxesRefundPaidDirect_NineMonths = 2814

    FinancialStatements_CashFlowStatement_TaxesRefundPaidDirect_TwelveMonths = 2815

    FinancialStatements_CashFlowStatement_TotalAdjustmentsforNonCashItems_TwoMonths = 2816

    FinancialStatements_CashFlowStatement_TotalAdjustmentsforNonCashItems_ThreeMonths = 2817

    FinancialStatements_CashFlowStatement_TotalAdjustmentsforNonCashItems_SixMonths = 2818

    FinancialStatements_CashFlowStatement_TotalAdjustmentsforNonCashItems_NineMonths = 2819

    FinancialStatements_CashFlowStatement_TotalAdjustmentsforNonCashItems_TwelveMonths = 2820

    FinancialStatements_CashFlowStatement_ImpairmentLossReversalRecognizedinProfitorLoss_ThreeMonths = 2821

    FinancialStatements_CashFlowStatement_ImpairmentLossReversalRecognizedinProfitorLoss_SixMonths = 2822

    FinancialStatements_CashFlowStatement_ImpairmentLossReversalRecognizedinProfitorLoss_NineMonths = 2823

    FinancialStatements_CashFlowStatement_ImpairmentLossReversalRecognizedinProfitorLoss_TwelveMonths = 2824

    FinancialStatements_CashFlowStatement_DividendPaidCFO_TwelveMonths = 2825

    FinancialStatements_CashFlowStatement_DividendReceivedCFO_SixMonths = 2826

    FinancialStatements_CashFlowStatement_DividendReceivedCFO_TwelveMonths = 2827

    FinancialStatements_CashFlowStatement_TaxesRefundPaid_ThreeMonths = 2828

    FinancialStatements_CashFlowStatement_TaxesRefundPaid_SixMonths = 2829

    FinancialStatements_CashFlowStatement_TaxesRefundPaid_NineMonths = 2830

    FinancialStatements_CashFlowStatement_TaxesRefundPaid_TwelveMonths = 2831

    FinancialStatements_CashFlowStatement_OtherOperatingInflowsOutflowsofCash_ThreeMonths = 2832

    FinancialStatements_CashFlowStatement_OtherOperatingInflowsOutflowsofCash_SixMonths = 2833

    FinancialStatements_CashFlowStatement_OtherOperatingInflowsOutflowsofCash_NineMonths = 2834

    FinancialStatements_CashFlowStatement_OtherOperatingInflowsOutflowsofCash_TwelveMonths = 2835

    FinancialStatements_CashFlowStatement_CashAdvancesandLoansMadetoOtherParties_TwelveMonths = 2836

    FinancialStatements_CashFlowStatement_CashReceiptsfromRepaymentofAdvancesandLoansMadetoOtherParties_SixMonths = 2837

    FinancialStatements_CashFlowStatement_CashReceiptsfromRepaymentofAdvancesandLoansMadetoOtherParties_TwelveMonths = 2838

    FinancialStatements_CashFlowStatement_DividendsReceivedCFI_ThreeMonths = 2839

    FinancialStatements_CashFlowStatement_DividendsReceivedCFI_SixMonths = 2840

    FinancialStatements_CashFlowStatement_DividendsReceivedCFI_NineMonths = 2841

    FinancialStatements_CashFlowStatement_DividendsReceivedCFI_TwelveMonths = 2842

    FinancialStatements_CashFlowStatement_InterestReceivedCFI_ThreeMonths = 2843

    FinancialStatements_CashFlowStatement_InterestReceivedCFI_SixMonths = 2844

    FinancialStatements_CashFlowStatement_InterestReceivedCFI_NineMonths = 2845

    FinancialStatements_CashFlowStatement_InterestReceivedCFI_TwelveMonths = 2846

    FinancialStatements_CashFlowStatement_InterestPaidCFF_ThreeMonths = 2847

    FinancialStatements_CashFlowStatement_InterestPaidCFF_SixMonths = 2848

    FinancialStatements_CashFlowStatement_InterestPaidCFF_NineMonths = 2849

    FinancialStatements_CashFlowStatement_InterestPaidCFF_TwelveMonths = 2850

    FinancialStatements_CashFlowStatement_ChangeinAccruedIncome_ThreeMonths = 2851

    FinancialStatements_CashFlowStatement_ChangeinAccruedIncome_SixMonths = 2852

    FinancialStatements_CashFlowStatement_ChangeinAccruedIncome_NineMonths = 2853

    FinancialStatements_CashFlowStatement_ChangeinAccruedIncome_TwelveMonths = 2854

    FinancialStatements_CashFlowStatement_ChangeinFinancialAssets_TwelveMonths = 2855

    FinancialStatements_CashFlowStatement_ChangeinAdvancesfromCentralBanks_ThreeMonths = 2856

    FinancialStatements_CashFlowStatement_ChangeinAdvancesfromCentralBanks_SixMonths = 2857

    FinancialStatements_CashFlowStatement_ChangeinAdvancesfromCentralBanks_NineMonths = 2858

    FinancialStatements_CashFlowStatement_ChangeinAdvancesfromCentralBanks_TwelveMonths = 2859

    FinancialStatements_CashFlowStatement_ChangeinFinancialLiabilities_ThreeMonths = 2860

    FinancialStatements_CashFlowStatement_ChangeinFinancialLiabilities_SixMonths = 2861

    FinancialStatements_CashFlowStatement_ChangeinFinancialLiabilities_NineMonths = 2862

    FinancialStatements_CashFlowStatement_ChangeinFinancialLiabilities_TwelveMonths = 2863

    FinancialStatements_CashFlowStatement_ChangeinInsuranceContractAssets_ThreeMonths = 2864

    FinancialStatements_CashFlowStatement_ChangeinInsuranceContractAssets_SixMonths = 2865

    FinancialStatements_CashFlowStatement_ChangeinInsuranceContractAssets_NineMonths = 2866

    FinancialStatements_CashFlowStatement_ChangeinInsuranceContractAssets_TwelveMonths = 2867

    FinancialStatements_CashFlowStatement_ChangeinReinsuranceReceivables_ThreeMonths = 2868

    FinancialStatements_CashFlowStatement_ChangeinReinsuranceReceivables_SixMonths = 2869

    FinancialStatements_CashFlowStatement_ChangeinReinsuranceReceivables_NineMonths = 2870

    FinancialStatements_CashFlowStatement_ChangeinReinsuranceReceivables_TwelveMonths = 2871

    FinancialStatements_CashFlowStatement_ChangeinDeferredAcquisitionCostsNet_ThreeMonths = 2872

    FinancialStatements_CashFlowStatement_ChangeinDeferredAcquisitionCostsNet_SixMonths = 2873

    FinancialStatements_CashFlowStatement_ChangeinDeferredAcquisitionCostsNet_NineMonths = 2874

    FinancialStatements_CashFlowStatement_ChangeinDeferredAcquisitionCostsNet_TwelveMonths = 2875

    FinancialStatements_CashFlowStatement_ChangeinInsuranceFunds_ThreeMonths = 2876

    FinancialStatements_CashFlowStatement_ChangeinInsuranceFunds_SixMonths = 2877

    FinancialStatements_CashFlowStatement_ChangeinInsuranceFunds_NineMonths = 2878

    FinancialStatements_CashFlowStatement_ChangeinInsuranceFunds_TwelveMonths = 2879

    FinancialStatements_CashFlowStatement_ChangeinInvestmentContractLiabilities_ThreeMonths = 2880

    FinancialStatements_CashFlowStatement_ChangeinInvestmentContractLiabilities_SixMonths = 2881

    FinancialStatements_CashFlowStatement_ChangeinInvestmentContractLiabilities_NineMonths = 2882

    FinancialStatements_CashFlowStatement_ChangeinInvestmentContractLiabilities_TwelveMonths = 2883

    FinancialStatements_CashFlowStatement_ChangeinInsuranceContractLiabilities_ThreeMonths = 2884

    FinancialStatements_CashFlowStatement_ChangeinInsuranceContractLiabilities_SixMonths = 2885

    FinancialStatements_CashFlowStatement_ChangeinInsuranceContractLiabilities_NineMonths = 2886

    FinancialStatements_CashFlowStatement_ChangeinInsuranceContractLiabilities_TwelveMonths = 2887

    FinancialStatements_CashFlowStatement_ProvisionandWriteOffofAssets_ThreeMonths = 2888

    FinancialStatements_CashFlowStatement_ProvisionandWriteOffofAssets_SixMonths = 2889

    FinancialStatements_CashFlowStatement_ProvisionandWriteOffofAssets_NineMonths = 2890

    FinancialStatements_CashFlowStatement_ProvisionandWriteOffofAssets_TwelveMonths = 2891

    FinancialStatements_CashFlowStatement_ReceiptsfromCustomers_ThreeMonths = 2892

    FinancialStatements_CashFlowStatement_ReceiptsfromCustomers_SixMonths = 2893

    FinancialStatements_CashFlowStatement_ReceiptsfromCustomers_NineMonths = 2894

    FinancialStatements_CashFlowStatement_ReceiptsfromCustomers_TwelveMonths = 2895

    FinancialStatements_CashFlowStatement_ReceiptsfromGovernmentGrants_ThreeMonths = 2896

    FinancialStatements_CashFlowStatement_ReceiptsfromGovernmentGrants_SixMonths = 2897

    FinancialStatements_CashFlowStatement_ReceiptsfromGovernmentGrants_NineMonths = 2898

    FinancialStatements_CashFlowStatement_ReceiptsfromGovernmentGrants_TwelveMonths = 2899

    FinancialStatements_CashFlowStatement_MinorityInterest_TwelveMonths = 2900

    FinancialStatements_CashFlowStatement_CapExReported_OneMonth = 2901

    FinancialStatements_CashFlowStatement_CapExReported_TwoMonths = 2902

    FinancialStatements_CashFlowStatement_CapExReported_ThreeMonths = 2903

    FinancialStatements_CashFlowStatement_CapExReported_SixMonths = 2904

    FinancialStatements_CashFlowStatement_CapExReported_NineMonths = 2905

    FinancialStatements_CashFlowStatement_CapExReported_TwelveMonths = 2906

    FinancialStatements_CashFlowStatement_CashReceiptsfromTaxRefunds_ThreeMonths = 2907

    FinancialStatements_CashFlowStatement_CashReceiptsfromTaxRefunds_SixMonths = 2908

    FinancialStatements_CashFlowStatement_CashReceiptsfromTaxRefunds_NineMonths = 2909

    FinancialStatements_CashFlowStatement_CashReceiptsfromTaxRefunds_TwelveMonths = 2910

    FinancialStatements_CashFlowStatement_CashReceiptsfromDepositsbyBanksandCustomers_OneMonth = 2911

    FinancialStatements_CashFlowStatement_CashReceiptsfromDepositsbyBanksandCustomers_ThreeMonths = 2912

    FinancialStatements_CashFlowStatement_CashReceiptsfromDepositsbyBanksandCustomers_SixMonths = 2913

    FinancialStatements_CashFlowStatement_CashReceiptsfromDepositsbyBanksandCustomers_NineMonths = 2914

    FinancialStatements_CashFlowStatement_CashReceiptsfromDepositsbyBanksandCustomers_TwelveMonths = 2915

    FinancialStatements_CashFlowStatement_CashReceiptsfromLoans_OneMonth = 2916

    FinancialStatements_CashFlowStatement_CashReceiptsfromLoans_ThreeMonths = 2917

    FinancialStatements_CashFlowStatement_CashReceiptsfromLoans_SixMonths = 2918

    FinancialStatements_CashFlowStatement_CashReceiptsfromLoans_NineMonths = 2919

    FinancialStatements_CashFlowStatement_CashReceiptsfromLoans_TwelveMonths = 2920

    FinancialStatements_CashFlowStatement_CashReceiptsfromSecuritiesRelatedActivities_OneMonth = 2921

    FinancialStatements_CashFlowStatement_CashReceiptsfromSecuritiesRelatedActivities_ThreeMonths = 2922

    FinancialStatements_CashFlowStatement_CashReceiptsfromSecuritiesRelatedActivities_SixMonths = 2923

    FinancialStatements_CashFlowStatement_CashReceiptsfromSecuritiesRelatedActivities_NineMonths = 2924

    FinancialStatements_CashFlowStatement_CashReceiptsfromSecuritiesRelatedActivities_TwelveMonths = 2925

    FinancialStatements_CashFlowStatement_CashReceiptsfromFeesandCommissions_ThreeMonths = 2926

    FinancialStatements_CashFlowStatement_CashReceiptsfromFeesandCommissions_SixMonths = 2927

    FinancialStatements_CashFlowStatement_CashReceiptsfromFeesandCommissions_NineMonths = 2928

    FinancialStatements_CashFlowStatement_CashReceiptsfromFeesandCommissions_TwelveMonths = 2929

    FinancialStatements_CashFlowStatement_CashPaymentsforDepositsbyBanksandCustomers_OneMonth = 2930

    FinancialStatements_CashFlowStatement_CashPaymentsforDepositsbyBanksandCustomers_ThreeMonths = 2931

    FinancialStatements_CashFlowStatement_CashPaymentsforDepositsbyBanksandCustomers_SixMonths = 2932

    FinancialStatements_CashFlowStatement_CashPaymentsforDepositsbyBanksandCustomers_NineMonths = 2933

    FinancialStatements_CashFlowStatement_CashPaymentsforDepositsbyBanksandCustomers_TwelveMonths = 2934

    FinancialStatements_CashFlowStatement_CashPaymentsforLoans_ThreeMonths = 2935

    FinancialStatements_CashFlowStatement_CashPaymentsforLoans_SixMonths = 2936

    FinancialStatements_CashFlowStatement_CashPaymentsforLoans_NineMonths = 2937

    FinancialStatements_CashFlowStatement_CashPaymentsforLoans_TwelveMonths = 2938

    FinancialStatements_CashFlowStatement_InterestandCommissionPaid_ThreeMonths = 2939

    FinancialStatements_CashFlowStatement_InterestandCommissionPaid_SixMonths = 2940

    FinancialStatements_CashFlowStatement_InterestandCommissionPaid_NineMonths = 2941

    FinancialStatements_CashFlowStatement_InterestandCommissionPaid_TwelveMonths = 2942

    FinancialStatements_CashFlowStatement_AllTaxesPaid_OneMonth = 2943

    FinancialStatements_CashFlowStatement_AllTaxesPaid_ThreeMonths = 2944

    FinancialStatements_CashFlowStatement_AllTaxesPaid_SixMonths = 2945

    FinancialStatements_CashFlowStatement_AllTaxesPaid_NineMonths = 2946

    FinancialStatements_CashFlowStatement_AllTaxesPaid_TwelveMonths = 2947

    FinancialStatements_CashFlowStatement_CashReceivedfromInsuranceActivities_ThreeMonths = 2948

    FinancialStatements_CashFlowStatement_CashReceivedfromInsuranceActivities_SixMonths = 2949

    FinancialStatements_CashFlowStatement_CashReceivedfromInsuranceActivities_NineMonths = 2950

    FinancialStatements_CashFlowStatement_CashReceivedfromInsuranceActivities_TwelveMonths = 2951

    FinancialStatements_CashFlowStatement_PremiumReceived_ThreeMonths = 2952

    FinancialStatements_CashFlowStatement_PremiumReceived_SixMonths = 2953

    FinancialStatements_CashFlowStatement_PremiumReceived_NineMonths = 2954

    FinancialStatements_CashFlowStatement_PremiumReceived_TwelveMonths = 2955

    FinancialStatements_CashFlowStatement_ReinsuranceandOtherRecoveriesReceived_ThreeMonths = 2956

    FinancialStatements_CashFlowStatement_ReinsuranceandOtherRecoveriesReceived_SixMonths = 2957

    FinancialStatements_CashFlowStatement_ReinsuranceandOtherRecoveriesReceived_NineMonths = 2958

    FinancialStatements_CashFlowStatement_ReinsuranceandOtherRecoveriesReceived_TwelveMonths = 2959

    FinancialStatements_CashFlowStatement_PolicyholderDepositInvestmentReceived_ThreeMonths = 2960

    FinancialStatements_CashFlowStatement_PolicyholderDepositInvestmentReceived_SixMonths = 2961

    FinancialStatements_CashFlowStatement_PolicyholderDepositInvestmentReceived_NineMonths = 2962

    FinancialStatements_CashFlowStatement_PolicyholderDepositInvestmentReceived_TwelveMonths = 2963

    FinancialStatements_CashFlowStatement_CashPaidforInsuranceActivities_ThreeMonths = 2964

    FinancialStatements_CashFlowStatement_CashPaidforInsuranceActivities_SixMonths = 2965

    FinancialStatements_CashFlowStatement_CashPaidforInsuranceActivities_NineMonths = 2966

    FinancialStatements_CashFlowStatement_CashPaidforInsuranceActivities_TwelveMonths = 2967

    FinancialStatements_CashFlowStatement_ClaimsPaid_ThreeMonths = 2968

    FinancialStatements_CashFlowStatement_ClaimsPaid_SixMonths = 2969

    FinancialStatements_CashFlowStatement_ClaimsPaid_NineMonths = 2970

    FinancialStatements_CashFlowStatement_ClaimsPaid_TwelveMonths = 2971

    FinancialStatements_CashFlowStatement_CommissionPaid_ThreeMonths = 2972

    FinancialStatements_CashFlowStatement_CommissionPaid_SixMonths = 2973

    FinancialStatements_CashFlowStatement_CommissionPaid_NineMonths = 2974

    FinancialStatements_CashFlowStatement_CommissionPaid_TwelveMonths = 2975

    FinancialStatements_CashFlowStatement_CashPaidtoReinsurers_ThreeMonths = 2976

    FinancialStatements_CashFlowStatement_CashPaidtoReinsurers_SixMonths = 2977

    FinancialStatements_CashFlowStatement_CashPaidtoReinsurers_NineMonths = 2978

    FinancialStatements_CashFlowStatement_CashPaidtoReinsurers_TwelveMonths = 2979

    FinancialStatements_CashFlowStatement_OtherUnderwritingExpensesPaid_ThreeMonths = 2980

    FinancialStatements_CashFlowStatement_OtherUnderwritingExpensesPaid_SixMonths = 2981

    FinancialStatements_CashFlowStatement_OtherUnderwritingExpensesPaid_NineMonths = 2982

    FinancialStatements_CashFlowStatement_OtherUnderwritingExpensesPaid_TwelveMonths = 2983

    FinancialStatements_CashFlowStatement_CashDividendsForMinorities_ThreeMonths = 2984

    FinancialStatements_CashFlowStatement_CashDividendsForMinorities_SixMonths = 2985

    FinancialStatements_CashFlowStatement_CashDividendsForMinorities_NineMonths = 2986

    FinancialStatements_CashFlowStatement_CashDividendsForMinorities_TwelveMonths = 2987

    FinancialStatements_CashFlowStatement_CashGeneratedfromOperatingActivities_ThreeMonths = 2988

    FinancialStatements_CashFlowStatement_CashGeneratedfromOperatingActivities_SixMonths = 2989

    FinancialStatements_CashFlowStatement_CashGeneratedfromOperatingActivities_NineMonths = 2990

    FinancialStatements_CashFlowStatement_CashGeneratedfromOperatingActivities_TwelveMonths = 2991

    FinancialStatements_CashFlowStatement_FundFromOperation_ThreeMonths = 2992

    FinancialStatements_CashFlowStatement_FundFromOperation_SixMonths = 2993

    FinancialStatements_CashFlowStatement_FundFromOperation_NineMonths = 2994

    FinancialStatements_CashFlowStatement_FundFromOperation_TwelveMonths = 2995

    FinancialStatements_CashFlowStatement_NetInvestmentPropertiesPurchaseAndSale_ThreeMonths = 2996

    FinancialStatements_CashFlowStatement_NetInvestmentPropertiesPurchaseAndSale_SixMonths = 2997

    FinancialStatements_CashFlowStatement_NetInvestmentPropertiesPurchaseAndSale_NineMonths = 2998

    FinancialStatements_CashFlowStatement_NetInvestmentPropertiesPurchaseAndSale_TwelveMonths = 2999

    FinancialStatements_CashFlowStatement_PurchaseOfInvestmentProperties_ThreeMonths = 3000

    FinancialStatements_CashFlowStatement_PurchaseOfInvestmentProperties_SixMonths = 3001

    FinancialStatements_CashFlowStatement_PurchaseOfInvestmentProperties_NineMonths = 3002

    FinancialStatements_CashFlowStatement_PurchaseOfInvestmentProperties_TwelveMonths = 3003

    FinancialStatements_CashFlowStatement_SaleOfInvestmentProperties_ThreeMonths = 3004

    FinancialStatements_CashFlowStatement_SaleOfInvestmentProperties_SixMonths = 3005

    FinancialStatements_CashFlowStatement_SaleOfInvestmentProperties_NineMonths = 3006

    FinancialStatements_CashFlowStatement_SaleOfInvestmentProperties_TwelveMonths = 3007

    FinancialStatements_CashFlowStatement_OtherCashAdjustIncludedIntoChangeinCash_ThreeMonths = 3008

    FinancialStatements_CashFlowStatement_OtherCashAdjustIncludedIntoChangeinCash_SixMonths = 3009

    FinancialStatements_CashFlowStatement_OtherCashAdjustIncludedIntoChangeinCash_NineMonths = 3010

    FinancialStatements_CashFlowStatement_OtherCashAdjustIncludedIntoChangeinCash_TwelveMonths = 3011

    FinancialStatements_CashFlowStatement_OtherCashAdjustExcludeFromChangeinCash_ThreeMonths = 3012

    FinancialStatements_CashFlowStatement_OtherCashAdjustExcludeFromChangeinCash_SixMonths = 3013

    FinancialStatements_CashFlowStatement_OtherCashAdjustExcludeFromChangeinCash_NineMonths = 3014

    FinancialStatements_CashFlowStatement_OtherCashAdjustExcludeFromChangeinCash_TwelveMonths = 3015

    FinancialStatements_CashFlowStatement_ChangeinCashSupplementalAsReported_ThreeMonths = 3016

    FinancialStatements_CashFlowStatement_ChangeinCashSupplementalAsReported_SixMonths = 3017

    FinancialStatements_CashFlowStatement_ChangeinCashSupplementalAsReported_NineMonths = 3018

    FinancialStatements_CashFlowStatement_ChangeinCashSupplementalAsReported_TwelveMonths = 3019

    EarningReports_PeriodEndingDate_OneMonth = 3020

    EarningReports_PeriodEndingDate_TwoMonths = 3021

    EarningReports_PeriodEndingDate_ThreeMonths = 3022

    EarningReports_PeriodEndingDate_SixMonths = 3023

    EarningReports_PeriodEndingDate_NineMonths = 3024

    EarningReports_PeriodEndingDate_TwelveMonths = 3025

    EarningReports_FileDate_OneMonth = 3026

    EarningReports_FileDate_TwoMonths = 3027

    EarningReports_FileDate_ThreeMonths = 3028

    EarningReports_FileDate_SixMonths = 3029

    EarningReports_FileDate_NineMonths = 3030

    EarningReports_FileDate_TwelveMonths = 3031

    EarningReports_AccessionNumber_OneMonth = 3032

    EarningReports_AccessionNumber_TwoMonths = 3033

    EarningReports_AccessionNumber_ThreeMonths = 3034

    EarningReports_AccessionNumber_SixMonths = 3035

    EarningReports_AccessionNumber_NineMonths = 3036

    EarningReports_FormType_OneMonth = 3037

    EarningReports_FormType_TwoMonths = 3038

    EarningReports_FormType_ThreeMonths = 3039

    EarningReports_FormType_SixMonths = 3040

    EarningReports_FormType_NineMonths = 3041

    EarningReports_FormType_TwelveMonths = 3042

    EarningReports_PeriodType_OneMonth = 3043

    EarningReports_PeriodType_TwoMonths = 3044

    EarningReports_PeriodType_ThreeMonths = 3045

    EarningReports_PeriodType_SixMonths = 3046

    EarningReports_PeriodType_NineMonths = 3047

    EarningReports_PeriodType_TwelveMonths = 3048

    EarningReports_BasicContinuousOperations_OneMonth = 3049

    EarningReports_BasicContinuousOperations_TwoMonths = 3050

    EarningReports_BasicContinuousOperations_ThreeMonths = 3051

    EarningReports_BasicContinuousOperations_SixMonths = 3052

    EarningReports_BasicContinuousOperations_NineMonths = 3053

    EarningReports_BasicContinuousOperations_TwelveMonths = 3054

    EarningReports_BasicDiscontinuousOperations_OneMonth = 3055

    EarningReports_BasicDiscontinuousOperations_TwoMonths = 3056

    EarningReports_BasicDiscontinuousOperations_ThreeMonths = 3057

    EarningReports_BasicDiscontinuousOperations_SixMonths = 3058

    EarningReports_BasicDiscontinuousOperations_NineMonths = 3059

    EarningReports_BasicDiscontinuousOperations_TwelveMonths = 3060

    EarningReports_BasicExtraordinary_OneMonth = 3061

    EarningReports_BasicExtraordinary_TwoMonths = 3062

    EarningReports_BasicExtraordinary_ThreeMonths = 3063

    EarningReports_BasicExtraordinary_SixMonths = 3064

    EarningReports_BasicExtraordinary_NineMonths = 3065

    EarningReports_BasicExtraordinary_TwelveMonths = 3066

    EarningReports_BasicAccountingChange_ThreeMonths = 3067

    EarningReports_BasicAccountingChange_SixMonths = 3068

    EarningReports_BasicAccountingChange_NineMonths = 3069

    EarningReports_BasicAccountingChange_TwelveMonths = 3070

    EarningReports_BasicEPS_OneMonth = 3071

    EarningReports_BasicEPS_TwoMonths = 3072

    EarningReports_BasicEPS_ThreeMonths = 3073

    EarningReports_BasicEPS_SixMonths = 3074

    EarningReports_BasicEPS_NineMonths = 3075

    EarningReports_BasicEPS_TwelveMonths = 3076

    EarningReports_DilutedContinuousOperations_OneMonth = 3077

    EarningReports_DilutedContinuousOperations_TwoMonths = 3078

    EarningReports_DilutedContinuousOperations_ThreeMonths = 3079

    EarningReports_DilutedContinuousOperations_SixMonths = 3080

    EarningReports_DilutedContinuousOperations_NineMonths = 3081

    EarningReports_DilutedContinuousOperations_TwelveMonths = 3082

    EarningReports_DilutedDiscontinuousOperations_OneMonth = 3083

    EarningReports_DilutedDiscontinuousOperations_TwoMonths = 3084

    EarningReports_DilutedDiscontinuousOperations_ThreeMonths = 3085

    EarningReports_DilutedDiscontinuousOperations_SixMonths = 3086

    EarningReports_DilutedDiscontinuousOperations_NineMonths = 3087

    EarningReports_DilutedDiscontinuousOperations_TwelveMonths = 3088

    EarningReports_DilutedExtraordinary_OneMonth = 3089

    EarningReports_DilutedExtraordinary_TwoMonths = 3090

    EarningReports_DilutedExtraordinary_ThreeMonths = 3091

    EarningReports_DilutedExtraordinary_SixMonths = 3092

    EarningReports_DilutedExtraordinary_NineMonths = 3093

    EarningReports_DilutedExtraordinary_TwelveMonths = 3094

    EarningReports_DilutedAccountingChange_ThreeMonths = 3095

    EarningReports_DilutedAccountingChange_SixMonths = 3096

    EarningReports_DilutedAccountingChange_NineMonths = 3097

    EarningReports_DilutedAccountingChange_TwelveMonths = 3098

    EarningReports_DilutedEPS_OneMonth = 3099

    EarningReports_DilutedEPS_TwoMonths = 3100

    EarningReports_DilutedEPS_ThreeMonths = 3101

    EarningReports_DilutedEPS_SixMonths = 3102

    EarningReports_DilutedEPS_NineMonths = 3103

    EarningReports_DilutedEPS_TwelveMonths = 3104

    EarningReports_BasicAverageShares_OneMonth = 3105

    EarningReports_BasicAverageShares_TwoMonths = 3106

    EarningReports_BasicAverageShares_ThreeMonths = 3107

    EarningReports_BasicAverageShares_SixMonths = 3108

    EarningReports_BasicAverageShares_NineMonths = 3109

    EarningReports_BasicAverageShares_TwelveMonths = 3110

    EarningReports_DilutedAverageShares_OneMonth = 3111

    EarningReports_DilutedAverageShares_TwoMonths = 3112

    EarningReports_DilutedAverageShares_ThreeMonths = 3113

    EarningReports_DilutedAverageShares_SixMonths = 3114

    EarningReports_DilutedAverageShares_NineMonths = 3115

    EarningReports_DilutedAverageShares_TwelveMonths = 3116

    EarningReports_DividendPerShare_OneMonth = 3117

    EarningReports_DividendPerShare_TwoMonths = 3118

    EarningReports_DividendPerShare_ThreeMonths = 3119

    EarningReports_DividendPerShare_SixMonths = 3120

    EarningReports_DividendPerShare_NineMonths = 3121

    EarningReports_DividendPerShare_TwelveMonths = 3122

    EarningReports_BasicEPSOtherGainsLosses_ThreeMonths = 3123

    EarningReports_BasicEPSOtherGainsLosses_SixMonths = 3124

    EarningReports_BasicEPSOtherGainsLosses_NineMonths = 3125

    EarningReports_BasicEPSOtherGainsLosses_TwelveMonths = 3126

    EarningReports_ContinuingAndDiscontinuedBasicEPS_OneMonth = 3127

    EarningReports_ContinuingAndDiscontinuedBasicEPS_TwoMonths = 3128

    EarningReports_ContinuingAndDiscontinuedBasicEPS_ThreeMonths = 3129

    EarningReports_ContinuingAndDiscontinuedBasicEPS_SixMonths = 3130

    EarningReports_ContinuingAndDiscontinuedBasicEPS_NineMonths = 3131

    EarningReports_ContinuingAndDiscontinuedBasicEPS_TwelveMonths = 3132

    EarningReports_TaxLossCarryforwardBasicEPS_ThreeMonths = 3133

    EarningReports_TaxLossCarryforwardBasicEPS_SixMonths = 3134

    EarningReports_TaxLossCarryforwardBasicEPS_NineMonths = 3135

    EarningReports_TaxLossCarryforwardBasicEPS_TwelveMonths = 3136

    EarningReports_DilutedEPSOtherGainsLosses_ThreeMonths = 3137

    EarningReports_DilutedEPSOtherGainsLosses_SixMonths = 3138

    EarningReports_DilutedEPSOtherGainsLosses_NineMonths = 3139

    EarningReports_DilutedEPSOtherGainsLosses_TwelveMonths = 3140

    EarningReports_ContinuingAndDiscontinuedDilutedEPS_OneMonth = 3141

    EarningReports_ContinuingAndDiscontinuedDilutedEPS_TwoMonths = 3142

    EarningReports_ContinuingAndDiscontinuedDilutedEPS_ThreeMonths = 3143

    EarningReports_ContinuingAndDiscontinuedDilutedEPS_SixMonths = 3144

    EarningReports_ContinuingAndDiscontinuedDilutedEPS_NineMonths = 3145

    EarningReports_ContinuingAndDiscontinuedDilutedEPS_TwelveMonths = 3146

    EarningReports_TaxLossCarryforwardDilutedEPS_ThreeMonths = 3147

    EarningReports_TaxLossCarryforwardDilutedEPS_SixMonths = 3148

    EarningReports_TaxLossCarryforwardDilutedEPS_NineMonths = 3149

    EarningReports_TaxLossCarryforwardDilutedEPS_TwelveMonths = 3150

    EarningReports_NormalizedBasicEPS_OneMonth = 3151

    EarningReports_NormalizedBasicEPS_TwoMonths = 3152

    EarningReports_NormalizedBasicEPS_ThreeMonths = 3153

    EarningReports_NormalizedBasicEPS_SixMonths = 3154

    EarningReports_NormalizedBasicEPS_NineMonths = 3155

    EarningReports_NormalizedBasicEPS_TwelveMonths = 3156

    EarningReports_NormalizedDilutedEPS_OneMonth = 3157

    EarningReports_NormalizedDilutedEPS_TwoMonths = 3158

    EarningReports_NormalizedDilutedEPS_ThreeMonths = 3159

    EarningReports_NormalizedDilutedEPS_SixMonths = 3160

    EarningReports_NormalizedDilutedEPS_NineMonths = 3161

    EarningReports_NormalizedDilutedEPS_TwelveMonths = 3162

    EarningReports_TotalDividendPerShare_OneMonth = 3163

    EarningReports_TotalDividendPerShare_TwoMonths = 3164

    EarningReports_TotalDividendPerShare_ThreeMonths = 3165

    EarningReports_TotalDividendPerShare_SixMonths = 3166

    EarningReports_TotalDividendPerShare_NineMonths = 3167

    EarningReports_TotalDividendPerShare_TwelveMonths = 3168

    EarningReports_ReportedNormalizedBasicEPS_ThreeMonths = 3169

    EarningReports_ReportedNormalizedBasicEPS_SixMonths = 3170

    EarningReports_ReportedNormalizedBasicEPS_NineMonths = 3171

    EarningReports_ReportedNormalizedBasicEPS_TwelveMonths = 3172

    EarningReports_ReportedNormalizedDilutedEPS_ThreeMonths = 3173

    EarningReports_ReportedNormalizedDilutedEPS_SixMonths = 3174

    EarningReports_ReportedNormalizedDilutedEPS_NineMonths = 3175

    EarningReports_ReportedNormalizedDilutedEPS_TwelveMonths = 3176

    EarningReports_DividendCoverageRatio_ThreeMonths = 3177

    EarningReports_DividendCoverageRatio_SixMonths = 3178

    EarningReports_DividendCoverageRatio_NineMonths = 3179

    EarningReports_DividendCoverageRatio_TwelveMonths = 3180

    OperationRatios_RevenueGrowth_OneYear = 3181

    OperationRatios_RevenueGrowth_ThreeYears = 3182

    OperationRatios_RevenueGrowth_ThreeMonths = 3183

    OperationRatios_RevenueGrowth_FiveYears = 3184

    OperationRatios_OperationIncomeGrowth_OneYear = 3185

    OperationRatios_OperationIncomeGrowth_ThreeYears = 3186

    OperationRatios_OperationIncomeGrowth_ThreeMonths = 3187

    OperationRatios_OperationIncomeGrowth_FiveYears = 3188

    OperationRatios_NetIncomeGrowth_OneYear = 3189

    OperationRatios_NetIncomeGrowth_ThreeYears = 3190

    OperationRatios_NetIncomeGrowth_ThreeMonths = 3191

    OperationRatios_NetIncomeGrowth_FiveYears = 3192

    OperationRatios_NetIncomeContOpsGrowth_OneYear = 3193

    OperationRatios_NetIncomeContOpsGrowth_ThreeYears = 3194

    OperationRatios_NetIncomeContOpsGrowth_ThreeMonths = 3195

    OperationRatios_NetIncomeContOpsGrowth_FiveYears = 3196

    OperationRatios_CFOGrowth_OneYear = 3197

    OperationRatios_CFOGrowth_ThreeYears = 3198

    OperationRatios_CFOGrowth_FiveYears = 3199

    OperationRatios_FCFGrowth_OneYear = 3200

    OperationRatios_FCFGrowth_ThreeYears = 3201

    OperationRatios_FCFGrowth_FiveYears = 3202

    OperationRatios_OperationRevenueGrowth3MonthAvg_OneYear = 3203

    OperationRatios_OperationRevenueGrowth3MonthAvg_ThreeYears = 3204

    OperationRatios_OperationRevenueGrowth3MonthAvg_ThreeMonths = 3205

    OperationRatios_OperationRevenueGrowth3MonthAvg_FiveYears = 3206

    OperationRatios_GrossMargin_OneYear = 3207

    OperationRatios_GrossMargin_OneMonth = 3208

    OperationRatios_GrossMargin_TwoMonths = 3209

    OperationRatios_GrossMargin_ThreeMonths = 3210

    OperationRatios_GrossMargin_SixMonths = 3211

    OperationRatios_GrossMargin_NineMonths = 3212

    OperationRatios_OperationMargin_OneYear = 3213

    OperationRatios_OperationMargin_OneMonth = 3214

    OperationRatios_OperationMargin_TwoMonths = 3215

    OperationRatios_OperationMargin_ThreeMonths = 3216

    OperationRatios_OperationMargin_SixMonths = 3217

    OperationRatios_OperationMargin_NineMonths = 3218

    OperationRatios_PretaxMargin_OneYear = 3219

    OperationRatios_PretaxMargin_OneMonth = 3220

    OperationRatios_PretaxMargin_TwoMonths = 3221

    OperationRatios_PretaxMargin_ThreeMonths = 3222

    OperationRatios_PretaxMargin_SixMonths = 3223

    OperationRatios_PretaxMargin_NineMonths = 3224

    OperationRatios_NetMargin_OneYear = 3225

    OperationRatios_NetMargin_OneMonth = 3226

    OperationRatios_NetMargin_TwoMonths = 3227

    OperationRatios_NetMargin_ThreeMonths = 3228

    OperationRatios_NetMargin_SixMonths = 3229

    OperationRatios_NetMargin_NineMonths = 3230

    OperationRatios_TaxRate_OneYear = 3231

    OperationRatios_TaxRate_OneMonth = 3232

    OperationRatios_TaxRate_TwoMonths = 3233

    OperationRatios_TaxRate_ThreeMonths = 3234

    OperationRatios_TaxRate_SixMonths = 3235

    OperationRatios_TaxRate_NineMonths = 3236

    OperationRatios_EBITMargin_OneYear = 3237

    OperationRatios_EBITMargin_OneMonth = 3238

    OperationRatios_EBITMargin_TwoMonths = 3239

    OperationRatios_EBITMargin_ThreeMonths = 3240

    OperationRatios_EBITMargin_SixMonths = 3241

    OperationRatios_EBITMargin_NineMonths = 3242

    OperationRatios_EBITDAMargin_OneYear = 3243

    OperationRatios_EBITDAMargin_OneMonth = 3244

    OperationRatios_EBITDAMargin_TwoMonths = 3245

    OperationRatios_EBITDAMargin_ThreeMonths = 3246

    OperationRatios_EBITDAMargin_SixMonths = 3247

    OperationRatios_EBITDAMargin_NineMonths = 3248

    OperationRatios_SalesPerEmployee_OneYear = 3249

    OperationRatios_SalesPerEmployee_OneMonth = 3250

    OperationRatios_SalesPerEmployee_TwoMonths = 3251

    OperationRatios_SalesPerEmployee_ThreeMonths = 3252

    OperationRatios_SalesPerEmployee_SixMonths = 3253

    OperationRatios_SalesPerEmployee_NineMonths = 3254

    OperationRatios_CurrentRatio_OneYear = 3255

    OperationRatios_CurrentRatio_OneMonth = 3256

    OperationRatios_CurrentRatio_TwoMonths = 3257

    OperationRatios_CurrentRatio_ThreeMonths = 3258

    OperationRatios_CurrentRatio_SixMonths = 3259

    OperationRatios_CurrentRatio_NineMonths = 3260

    OperationRatios_QuickRatio_OneYear = 3261

    OperationRatios_QuickRatio_OneMonth = 3262

    OperationRatios_QuickRatio_TwoMonths = 3263

    OperationRatios_QuickRatio_ThreeMonths = 3264

    OperationRatios_QuickRatio_SixMonths = 3265

    OperationRatios_QuickRatio_NineMonths = 3266

    OperationRatios_LongTermDebtTotalCapitalRatio_OneYear = 3267

    OperationRatios_LongTermDebtTotalCapitalRatio_OneMonth = 3268

    OperationRatios_LongTermDebtTotalCapitalRatio_TwoMonths = 3269

    OperationRatios_LongTermDebtTotalCapitalRatio_ThreeMonths = 3270

    OperationRatios_LongTermDebtTotalCapitalRatio_SixMonths = 3271

    OperationRatios_LongTermDebtTotalCapitalRatio_NineMonths = 3272

    OperationRatios_InterestCoverage_OneYear = 3273

    OperationRatios_InterestCoverage_OneMonth = 3274

    OperationRatios_InterestCoverage_TwoMonths = 3275

    OperationRatios_InterestCoverage_ThreeMonths = 3276

    OperationRatios_InterestCoverage_SixMonths = 3277

    OperationRatios_InterestCoverage_NineMonths = 3278

    OperationRatios_LongTermDebtEquityRatio_OneYear = 3279

    OperationRatios_LongTermDebtEquityRatio_OneMonth = 3280

    OperationRatios_LongTermDebtEquityRatio_TwoMonths = 3281

    OperationRatios_LongTermDebtEquityRatio_ThreeMonths = 3282

    OperationRatios_LongTermDebtEquityRatio_SixMonths = 3283

    OperationRatios_LongTermDebtEquityRatio_NineMonths = 3284

    OperationRatios_FinancialLeverage_OneYear = 3285

    OperationRatios_FinancialLeverage_OneMonth = 3286

    OperationRatios_FinancialLeverage_TwoMonths = 3287

    OperationRatios_FinancialLeverage_ThreeMonths = 3288

    OperationRatios_FinancialLeverage_SixMonths = 3289

    OperationRatios_FinancialLeverage_NineMonths = 3290

    OperationRatios_TotalDebtEquityRatio_OneYear = 3291

    OperationRatios_TotalDebtEquityRatio_OneMonth = 3292

    OperationRatios_TotalDebtEquityRatio_TwoMonths = 3293

    OperationRatios_TotalDebtEquityRatio_ThreeMonths = 3294

    OperationRatios_TotalDebtEquityRatio_SixMonths = 3295

    OperationRatios_TotalDebtEquityRatio_NineMonths = 3296

    OperationRatios_NormalizedNetProfitMargin_OneYear = 3297

    OperationRatios_NormalizedNetProfitMargin_OneMonth = 3298

    OperationRatios_NormalizedNetProfitMargin_TwoMonths = 3299

    OperationRatios_NormalizedNetProfitMargin_ThreeMonths = 3300

    OperationRatios_NormalizedNetProfitMargin_SixMonths = 3301

    OperationRatios_NormalizedNetProfitMargin_NineMonths = 3302

    OperationRatios_DaysInSales_OneYear = 3303

    OperationRatios_DaysInSales_ThreeMonths = 3304

    OperationRatios_DaysInSales_SixMonths = 3305

    OperationRatios_DaysInInventory_OneYear = 3306

    OperationRatios_DaysInInventory_ThreeMonths = 3307

    OperationRatios_DaysInInventory_SixMonths = 3308

    OperationRatios_DaysInPayment_OneYear = 3309

    OperationRatios_DaysInPayment_ThreeMonths = 3310

    OperationRatios_DaysInPayment_SixMonths = 3311

    OperationRatios_CashConversionCycle_OneYear = 3312

    OperationRatios_CashConversionCycle_ThreeMonths = 3313

    OperationRatios_CashConversionCycle_SixMonths = 3314

    OperationRatios_ReceivableTurnover_OneYear = 3315

    OperationRatios_ReceivableTurnover_ThreeMonths = 3316

    OperationRatios_ReceivableTurnover_SixMonths = 3317

    OperationRatios_InventoryTurnover_OneYear = 3318

    OperationRatios_InventoryTurnover_ThreeMonths = 3319

    OperationRatios_InventoryTurnover_SixMonths = 3320

    OperationRatios_PaymentTurnover_OneYear = 3321

    OperationRatios_PaymentTurnover_ThreeMonths = 3322

    OperationRatios_PaymentTurnover_SixMonths = 3323

    OperationRatios_FixAssetsTuronver_OneYear = 3324

    OperationRatios_FixAssetsTuronver_ThreeMonths = 3325

    OperationRatios_FixAssetsTuronver_SixMonths = 3326

    OperationRatios_AssetsTurnover_OneYear = 3327

    OperationRatios_AssetsTurnover_ThreeMonths = 3328

    OperationRatios_AssetsTurnover_SixMonths = 3329

    OperationRatios_ROE_OneYear = 3330

    OperationRatios_ROE_ThreeMonths = 3331

    OperationRatios_ROE_SixMonths = 3332

    OperationRatios_ROA_OneYear = 3333

    OperationRatios_ROA_ThreeMonths = 3334

    OperationRatios_ROA_SixMonths = 3335

    OperationRatios_ROIC_OneYear = 3336

    OperationRatios_ROIC_ThreeMonths = 3337

    OperationRatios_ROIC_SixMonths = 3338

    OperationRatios_FCFSalesRatio_OneYear = 3339

    OperationRatios_FCFNetIncomeRatio_OneYear = 3340

    OperationRatios_CapExSalesRatio_OneYear = 3341

    OperationRatios_DebttoAssets_OneYear = 3342

    OperationRatios_DebttoAssets_OneMonth = 3343

    OperationRatios_DebttoAssets_TwoMonths = 3344

    OperationRatios_DebttoAssets_ThreeMonths = 3345

    OperationRatios_DebttoAssets_SixMonths = 3346

    OperationRatios_DebttoAssets_NineMonths = 3347

    OperationRatios_CommonEquityToAssets_OneYear = 3348

    OperationRatios_CommonEquityToAssets_OneMonth = 3349

    OperationRatios_CommonEquityToAssets_TwoMonths = 3350

    OperationRatios_CommonEquityToAssets_ThreeMonths = 3351

    OperationRatios_CommonEquityToAssets_SixMonths = 3352

    OperationRatios_CommonEquityToAssets_NineMonths = 3353

    OperationRatios_CapitalExpenditureAnnual5YrGrowth_OneYear = 3354

    OperationRatios_CapitalExpenditureAnnual5YrGrowth_ThreeYears = 3355

    OperationRatios_CapitalExpenditureAnnual5YrGrowth_FiveYears = 3356

    OperationRatios_GrossProfitAnnual5YrGrowth_OneYear = 3357

    OperationRatios_GrossProfitAnnual5YrGrowth_ThreeYears = 3358

    OperationRatios_GrossProfitAnnual5YrGrowth_FiveYears = 3359

    OperationRatios_GrossMargin5YrAvg_FiveYears = 3360

    OperationRatios_PostTaxMargin5YrAvg_FiveYears = 3361

    OperationRatios_PreTaxMargin5YrAvg_FiveYears = 3362

    OperationRatios_ProfitMargin5YrAvg_FiveYears = 3363

    OperationRatios_ROE5YrAvg_FiveYears = 3364

    OperationRatios_ROA5YrAvg_FiveYears = 3365

    OperationRatios_AVG5YrsROIC_FiveYears = 3366

    OperationRatios_NormalizedROIC_OneYear = 3367

    OperationRatios_NormalizedROIC_ThreeMonths = 3368

    OperationRatios_NormalizedROIC_SixMonths = 3369

    OperationRatios_RegressionGrowthOperatingRevenue5Years_FiveYears = 3370

    OperationRatios_CashRatio_OneYear = 3371

    OperationRatios_CashRatio_ThreeMonths = 3372

    OperationRatios_CashtoTotalAssets_OneYear = 3373

    OperationRatios_CashtoTotalAssets_ThreeMonths = 3374

    OperationRatios_CapitalExpendituretoEBITDA_OneYear = 3375

    OperationRatios_FCFtoCFO_OneYear = 3376

    OperationRatios_StockholdersEquityGrowth_OneYear = 3377

    OperationRatios_StockholdersEquityGrowth_ThreeYears = 3378

    OperationRatios_StockholdersEquityGrowth_FiveYears = 3379

    OperationRatios_TotalAssetsGrowth_OneYear = 3380

    OperationRatios_TotalAssetsGrowth_ThreeYears = 3381

    OperationRatios_TotalAssetsGrowth_FiveYears = 3382

    OperationRatios_TotalLiabilitiesGrowth_OneYear = 3383

    OperationRatios_TotalLiabilitiesGrowth_ThreeYears = 3384

    OperationRatios_TotalLiabilitiesGrowth_FiveYears = 3385

    OperationRatios_TotalDebtEquityRatioGrowth_OneYear = 3386

    OperationRatios_TotalDebtEquityRatioGrowth_ThreeYears = 3387

    OperationRatios_TotalDebtEquityRatioGrowth_FiveYears = 3388

    OperationRatios_CashRatioGrowth_OneYear = 3389

    OperationRatios_CashRatioGrowth_ThreeYears = 3390

    OperationRatios_CashRatioGrowth_FiveYears = 3391

    OperationRatios_EBITDAGrowth_OneYear = 3392

    OperationRatios_EBITDAGrowth_ThreeYears = 3393

    OperationRatios_EBITDAGrowth_FiveYears = 3394

    OperationRatios_CashFlowfromFinancingGrowth_OneYear = 3395

    OperationRatios_CashFlowfromFinancingGrowth_ThreeYears = 3396

    OperationRatios_CashFlowfromFinancingGrowth_FiveYears = 3397

    OperationRatios_CashFlowfromInvestingGrowth_OneYear = 3398

    OperationRatios_CashFlowfromInvestingGrowth_ThreeYears = 3399

    OperationRatios_CashFlowfromInvestingGrowth_FiveYears = 3400

    OperationRatios_CapExGrowth_OneYear = 3401

    OperationRatios_CapExGrowth_ThreeYears = 3402

    OperationRatios_CapExGrowth_FiveYears = 3403

    OperationRatios_CurrentRatioGrowth_OneYear = 3404

    OperationRatios_CurrentRatioGrowth_ThreeYears = 3405

    OperationRatios_CurrentRatioGrowth_FiveYears = 3406

    OperationRatios_WorkingCapitalTurnoverRatio_OneYear = 3407

    OperationRatios_WorkingCapitalTurnoverRatio_ThreeMonths = 3408

    OperationRatios_NetIncomePerEmployee_OneYear = 3409

    OperationRatios_NetIncomePerEmployee_ThreeMonths = 3410

    OperationRatios_SolvencyRatio_OneYear = 3411

    OperationRatios_SolvencyRatio_ThreeMonths = 3412

    OperationRatios_ExpenseRatio_OneYear = 3413

    OperationRatios_ExpenseRatio_ThreeMonths = 3414

    OperationRatios_LossRatio_OneYear = 3415

    OperationRatios_LossRatio_ThreeMonths = 3416

    EarningRatios_DilutedEPSGrowth_OneYear = 3417

    EarningRatios_DilutedEPSGrowth_ThreeYears = 3418

    EarningRatios_DilutedEPSGrowth_ThreeMonths = 3419

    EarningRatios_DilutedEPSGrowth_FiveYears = 3420

    EarningRatios_DilutedContEPSGrowth_OneYear = 3421

    EarningRatios_DilutedContEPSGrowth_ThreeYears = 3422

    EarningRatios_DilutedContEPSGrowth_ThreeMonths = 3423

    EarningRatios_DilutedContEPSGrowth_FiveYears = 3424

    EarningRatios_DPSGrowth_OneYear = 3425

    EarningRatios_DPSGrowth_ThreeMonths = 3426

    EarningRatios_DPSGrowth_ThreeYears = 3427

    EarningRatios_DPSGrowth_FiveYears = 3428

    EarningRatios_EquityPerShareGrowth_OneYear = 3429

    EarningRatios_EquityPerShareGrowth_ThreeMonths = 3430

    EarningRatios_EquityPerShareGrowth_ThreeYears = 3431

    EarningRatios_EquityPerShareGrowth_FiveYears = 3432

    EarningRatios_RegressionGrowthofDividends5Years_FiveYears = 3433

    EarningRatios_FCFPerShareGrowth_OneYear = 3434

    EarningRatios_FCFPerShareGrowth_ThreeYears = 3435

    EarningRatios_FCFPerShareGrowth_FiveYears = 3436

    EarningRatios_BookValuePerShareGrowth_OneYear = 3437

    EarningRatios_BookValuePerShareGrowth_ThreeMonths = 3438

    EarningRatios_BookValuePerShareGrowth_ThreeYears = 3439

    EarningRatios_BookValuePerShareGrowth_FiveYears = 3440

    EarningRatios_NormalizedDilutedEPSGrowth_OneYear = 3441

    EarningRatios_NormalizedDilutedEPSGrowth_ThreeMonths = 3442

    EarningRatios_NormalizedDilutedEPSGrowth_ThreeYears = 3443

    EarningRatios_NormalizedDilutedEPSGrowth_FiveYears = 3444

    EarningRatios_NormalizedBasicEPSGrowth_OneYear = 3445

    EarningRatios_NormalizedBasicEPSGrowth_ThreeMonths = 3446

    EarningRatios_NormalizedBasicEPSGrowth_ThreeYears = 3447

    EarningRatios_NormalizedBasicEPSGrowth_FiveYears = 3448

    ValuationRatios_PayoutRatio = 3449

    ValuationRatios_SustainableGrowthRate = 3450

    ValuationRatios_CashReturn = 3451

    ValuationRatios_SalesPerShare = 3452

    ValuationRatios_BookValuePerShare = 3453

    ValuationRatios_CFOPerShare = 3454

    ValuationRatios_FCFPerShare = 3455

    ValuationRatios_EarningYield = 3456

    ValuationRatios_PERatio = 3457

    ValuationRatios_SalesYield = 3458

    ValuationRatios_PSRatio = 3459

    ValuationRatios_BookValueYield = 3460

    ValuationRatios_PBRatio = 3461

    ValuationRatios_CFYield = 3462

    ValuationRatios_PCFRatio = 3463

    ValuationRatios_FCFYield = 3464

    ValuationRatios_FCFRatio = 3465

    ValuationRatios_TrailingDividendYield = 3466

    ValuationRatios_ForwardDividendYield = 3467

    ValuationRatios_ForwardEarningYield = 3468

    ValuationRatios_ForwardPERatio = 3469

    ValuationRatios_PEGRatio = 3470

    ValuationRatios_PEGPayback = 3471

    ValuationRatios_TangibleBookValuePerShare = 3472

    ValuationRatios_TangibleBVPerShare3YrAvg = 3473

    ValuationRatios_TangibleBVPerShare5YrAvg = 3474

    ValuationRatios_ForwardDividend = 3475

    ValuationRatios_WorkingCapitalPerShare = 3476

    ValuationRatios_WorkingCapitalPerShare3YrAvg = 3477

    ValuationRatios_WorkingCapitalPerShare5YrAvg = 3478

    ValuationRatios_EVToEBITDA = 3479

    ValuationRatios_BuyBackYield = 3480

    ValuationRatios_TotalYield = 3481

    ValuationRatios_RatioPE5YearAverage = 3482

    ValuationRatios_PriceChange1M = 3483

    ValuationRatios_NormalizedPERatio = 3484

    ValuationRatios_PricetoEBITDA = 3485

    ValuationRatios_DivYield5Year = 3486

    ValuationRatios_ForwardROE = 3487

    ValuationRatios_ForwardROA = 3488

    ValuationRatios_TwoYearsForwardEarningYield = 3489

    ValuationRatios_TwoYearsForwardPERatio = 3490

    ValuationRatios_ForwardCalculationStyle = 3491

    ValuationRatios_ActualForwardDividend = 3492

    ValuationRatios_TrailingCalculationStyle = 3493

    ValuationRatios_ActualTrailingDividend = 3494

    ValuationRatios_TotalAssetPerShare = 3495

    ValuationRatios_ExpectedDividendGrowthRate = 3496

    ValuationRatios_EVtoRevenue = 3497

    ValuationRatios_EVtoPreTaxIncome = 3498

    ValuationRatios_EVtoTotalAssets = 3499

    ValuationRatios_EVtoFCF = 3500

    ValuationRatios_EVtoEBIT = 3501

    ValuationRatios_FFOPerShare = 3502

    ValuationRatios_PricetoCashRatio = 3503

    ValuationRatios_EVToForwardEBITDA = 3504

    ValuationRatios_EVToForwardRevenue = 3505

    ValuationRatios_EVToForwardEBIT = 3506

    ValuationRatios_EVToEBITDA1YearGrowth = 3507

    ValuationRatios_EVToFCF1YearGrowth = 3508

    ValuationRatios_EVToRevenue1YearGrowth = 3509

    ValuationRatios_EVToTotalAssets1YearGrowth = 3510

    ValuationRatios_PFCFRatio1YearGrowth = 3511

    ValuationRatios_PBRatio1YearGrowth = 3512

    ValuationRatios_PERatio1YearGrowth = 3513

    ValuationRatios_PSRatio1YearGrowth = 3514

    ValuationRatios_EVToEBIT3YrAvg = 3515

    ValuationRatios_EVToEBITDA3YrAvg = 3516

    ValuationRatios_EVToFCF3YrAvg = 3517

    ValuationRatios_EVToRevenue3YrAvg = 3518

    ValuationRatios_EVToTotalAssets3YrAvg = 3519

    ValuationRatios_EVToEBIT3YrAvgChange = 3520

    ValuationRatios_EVToEBITDA3YrAvgChange = 3521

    ValuationRatios_EVToFCF3YrAvgChange = 3522

    ValuationRatios_EVToRevenue3YrAvgChange = 3523

    ValuationRatios_EVToTotalAssets3YrAvgChange = 3524

    ValuationRatios_PFCFRatio3YrAvg = 3525

    ValuationRatios_PBRatio3YrAvg = 3526

    ValuationRatios_PSRatio3YrAvg = 3527

    ValuationRatios_PCashRatio3YrAvg = 3528

    ValuationRatios_PERatio3YrAvg = 3529

    ValuationRatios_PFCFRatio3YrAvgChange = 3530

    ValuationRatios_PBRatio3YrAvgChange = 3531

    ValuationRatios_PSRatio3YrAvgChange = 3532

    ValuationRatios_PERatio3YrAvgChange = 3533

    ValuationRatios_PERatio1YearHigh = 3534

    ValuationRatios_PERatio1YearLow = 3535

    ValuationRatios_PERatio1YearAverage = 3536

    ValuationRatios_PERatio5YearHigh = 3537

    ValuationRatios_PERatio5YearLow = 3538

    ValuationRatios_PERatio5YearAverage = 3539

    ValuationRatios_PERatio10YearHigh = 3540

    ValuationRatios_PERatio10YearLow = 3541

    ValuationRatios_PERatio10YearAverage = 3542

    ValuationRatios_CAPERatio = 3543

    ValuationRatios_EVToEBITDA3YearGrowth = 3544

    ValuationRatios_EVToFCF3YearGrowth = 3545

    ValuationRatios_EVToRevenue3YearGrowth = 3546

    ValuationRatios_EVToTotalAssets3YearGrowth = 3547

    ValuationRatios_PFCFRatio3YearGrowth = 3548

    ValuationRatios_PBRatio3YearGrowth = 3549

    ValuationRatios_PERatio3YearGrowth = 3550

    ValuationRatios_PSRatio3YearGrowth = 3551

    ValuationRatios_EVToEBITDA5YearGrowth = 3552

    ValuationRatios_EVToFCF5YearGrowth = 3553

    ValuationRatios_EVToRevenue5YearGrowth = 3554

    ValuationRatios_EVToTotalAssets5YearGrowth = 3555

    ValuationRatios_PFCFRatio5YearGrowth = 3556

    ValuationRatios_PBRatio5YearGrowth = 3557

    ValuationRatios_PERatio5YearGrowth = 3558

    ValuationRatios_PSRatio5YearGrowth = 3559

    ValuationRatios_EVToEBITDA10YearGrowth = 3560

    ValuationRatios_EVToFCF10YearGrowth = 3561

    ValuationRatios_EVToRevenue10YearGrowth = 3562

    ValuationRatios_EVToTotalAssets10YearGrowth = 3563

    ValuationRatios_PFCFRatio10YearGrowth = 3564

    ValuationRatios_PBRatio10YearGrowth = 3565

    ValuationRatios_PERatio10YearGrowth = 3566

    ValuationRatios_PSRatio10YearGrowth = 3567

    ValuationRatios_TwoYrsEVToForwardEBIT = 3568

    ValuationRatios_TwoYrsEVToForwardEBITDA = 3569

    ValuationRatios_FirstYearEstimatedEPSGrowth = 3570

    ValuationRatios_SecondYearEstimatedEPSGrowth = 3571

    ValuationRatios_NormalizedPEGatio = 3572

    CompanyProfile_HeadquarterAddressLine1 = 3573

    CompanyProfile_HeadquarterAddressLine2 = 3574

    CompanyProfile_HeadquarterAddressLine3 = 3575

    CompanyProfile_HeadquarterAddressLine4 = 3576

    CompanyProfile_HeadquarterAddressLine5 = 3577

    CompanyProfile_HeadquarterCity = 3578

    CompanyProfile_HeadquarterProvince = 3579

    CompanyProfile_HeadquarterCountry = 3580

    CompanyProfile_HeadquarterPostalCode = 3581

    CompanyProfile_HeadquarterPhone = 3582

    CompanyProfile_HeadquarterFax = 3583

    CompanyProfile_HeadquarterHomepage = 3584

    CompanyProfile_TotalEmployeeNumber = 3585

    CompanyProfile_ContactEmail = 3586

    CompanyProfile_AverageEmployeeNumber = 3587

    CompanyProfile_RegisteredAddressLine1 = 3588

    CompanyProfile_RegisteredAddressLine2 = 3589

    CompanyProfile_RegisteredAddressLine3 = 3590

    CompanyProfile_RegisteredAddressLine4 = 3591

    CompanyProfile_RegisteredCity = 3592

    CompanyProfile_RegisteredProvince = 3593

    CompanyProfile_RegisteredCountry = 3594

    CompanyProfile_RegisteredPostalCode = 3595

    CompanyProfile_RegisteredPhone = 3596

    CompanyProfile_RegisteredFax = 3597

    CompanyProfile_IsHeadOfficeSameWithRegisteredOfficeFlag = 3598

    CompanyProfile_SharesOutstanding = 3599

    CompanyProfile_MarketCap = 3600

    CompanyProfile_EnterpriseValue = 3601

    CompanyProfile_ShareClassLevelSharesOutstanding = 3602

    CompanyProfile_SharesOutstandingWithBalanceSheetEndingDate = 3603

    CompanyProfile_ReasonofSharesChange = 3604

    AssetClassification_StockType = 3605

    AssetClassification_StyleBox = 3606

    AssetClassification_GrowthGrade = 3607

    AssetClassification_FinancialHealthGrade = 3608

    AssetClassification_ProfitabilityGrade = 3609

    AssetClassification_MorningstarIndustryCode = 3610

    AssetClassification_MorningstarIndustryGroupCode = 3611

    AssetClassification_MorningstarSectorCode = 3612

    AssetClassification_MorningstarEconomySphereCode = 3613

    AssetClassification_SIC = 3614

    AssetClassification_NAICS = 3615

    AssetClassification_StyleScore = 3616

    AssetClassification_SizeScore = 3617

    AssetClassification_GrowthScore = 3618

    AssetClassification_ValueScore = 3619

    AssetClassification_NACE = 3620

    AssetClassification_CANNAICS = 3621


class Period(System.Object):
    """Period constants for multi-period fields"""

    OneMonth: str = "1M"
    """Period constant for one month"""

    TwoMonths: str = "2M"
    """Period constant for two months"""

    ThreeMonths: str = "3M"
    """Period constant for three months"""

    SixMonths: str = "6M"
    """Period constant for six months"""

    NineMonths: str = "9M"
    """Period constant for nine months"""

    TwelveMonths: str = "12M"
    """Period constant for twelve months"""

    OneYear: str = "1Y"
    """Period constant for one year"""

    TwoYears: str = "2Y"
    """Period constant for two years"""

    ThreeYears: str = "3Y"
    """Period constant for three years"""

    FiveYears: str = "5Y"
    """Period constant for five years"""

    TenYears: str = "10Y"
    """Period constant for ten years"""


class Fundamentals(QuantConnect.Data.UniverseSelection.BaseDataCollection):
    """Lean fundamentals universe data class"""

    @overload
    def __init__(self) -> None:
        """Creates a new instance"""
        ...

    @overload
    def __init__(self, time: typing.Union[datetime.datetime, datetime.date], symbol: typing.Union[QuantConnect.Symbol, str]) -> None:
        """
        Creates a new instance
        
        :param time: The current time
        :param symbol: The associated symbol
        """
        ...

    def Clone(self) -> QuantConnect.Data.BaseData:
        """
        Will clone the current instance
        
        :returns: The cloned instance.
        """
        ...

    @staticmethod
    def CreateUniverseSymbol(market: str) -> QuantConnect.Symbol:
        """
        Creates the symbol used for coarse fundamental data
        
        :param market: The market
        :returns: A coarse universe symbol for the specified market.
        """
        ...

    def GetSource(self, config: QuantConnect.Data.SubscriptionDataConfig, date: typing.Union[datetime.datetime, datetime.date], isLiveMode: bool) -> QuantConnect.Data.SubscriptionDataSource:
        """Return the URL string source of the file. This will be converted to a stream"""
        ...

    def Reader(self, config: QuantConnect.Data.SubscriptionDataConfig, line: str, date: typing.Union[datetime.datetime, datetime.date], isLiveMode: bool) -> QuantConnect.Data.BaseData:
        """
        Will read a new instance from the given line
        
        :param config: The associated requested configuration
        :param line: The line to parse
        :param date: The current time
        :param isLiveMode: True if live mode
        :returns: A new instance or null.
        """
        ...


class CompanyReference(ReusuableCLRObject):
    """Definition of the CompanyReference class"""

    @property
    def CompanyId(self) -> str:
        """10-digit unique and unchanging Morningstar identifier assigned to every company."""
        ...

    @property
    def ShortName(self) -> str:
        """25-character max abbreviated name of the firm. In most cases, the short name will simply be the Legal Name less the "Corporation", "Corp.", "Inc.", "Incorporated", etc..."""
        ...

    @property
    def StandardName(self) -> str:
        """The English translation of the foreign legal name if/when applicable."""
        ...

    @property
    def LegalName(self) -> str:
        """The full name of the registrant as specified in its charter, and most often found on the front cover of the 10K/10Q/20F filing."""
        ...

    @property
    def CountryId(self) -> str:
        """3 Character ISO code of the country where the firm is domiciled. See separate reference document for Country Mappings."""
        ...

    @property
    def CIK(self) -> str:
        """The Central Index Key; a corporate identifier assigned by the Securities and Exchange Commission (SEC)."""
        ...

    @property
    def CompanyStatus(self) -> str:
        """At the Company level; each company is assigned to 1 of 3 possible status classifications; (U) Public, (V) Private, or (O) Obsolete: - Public-Firm is operating and currently has at least one common share class that is currently trading on a public exchange. - Private-Firm is operating but does not have any common share classes currently trading on a public exchange. - Obsolete-Firm is no longer operating because it closed its business, or was acquired."""
        ...

    @property
    def FiscalYearEnd(self) -> int:
        """The Month of the company's latest fiscal year."""
        ...

    @property
    def IndustryTemplateCode(self) -> str:
        """This indicator will denote which one of the six industry data collection templates applies to the company. Each industry data collection template includes data elements that are commonly reported by companies in that industry. N=Normal (Manufacturing), M=Mining, U=Utility, T=Transportation, B=Bank, I=Insurance"""
        ...

    @property
    def PrimaryShareClassID(self) -> str:
        """The 10-digit unique and unchanging Morningstar identifier assigned to the Primary Share class of a company. The primary share of a company is defined as the first share that was traded publicly and is still actively trading. If this share is no longer trading, the primary share will be the share with the highest volume."""
        ...

    @property
    def PrimarySymbol(self) -> str:
        """The symbol of the Primary Share of the company, composed of an arrangement of characters (often letters) representing a particular security listed on an exchange or otherwise traded publicly. The primary share of a company is defined as the first share that was traded publicly and is still actively trading. If this share is no longer trading, the primary share will be the share with the highest volume. Note: Morningstar's multi-share class symbols will often contain a "period" within the symbol; e.g. BRK.B for Berkshire Hathaway Class B."""
        ...

    @property
    def PrimaryExchangeID(self) -> str:
        """The Id representing the stock exchange of the Primary Share of the company. See separate reference document for Exchange Mappings. The primary share of a company is defined as the first share that was traded publicly with and is still actively trading. If this share is no longer trading, the primary share will be the share with the highest volume."""
        ...

    @property
    def BusinessCountryID(self) -> str:
        """In some cases, different from the country of domicile (CountryId; DataID 5). This element is a three (3) Character ISO code of the business country of the security. It is determined by a few factors, including:"""
        ...

    @property
    def LegalNameLanguageCode(self) -> str:
        """The language code for the foreign legal name if/when applicable. Related to DataID 4 (LegalName)."""
        ...

    @property
    def Auditor(self) -> str:
        """The legal (registered) name of the company's current auditor. Distinct from DataID 28000 Period Auditor that identifies the Auditor related to that period's financial statements."""
        ...

    @property
    def AuditorLanguageCode(self) -> str:
        """The ISO code denoting the language text for Auditor's name and contact information."""
        ...

    @property
    def Advisor(self) -> str:
        """The legal (registered) name of the current legal Advisor of the company."""
        ...

    @property
    def AdvisorLanguageCode(self) -> str:
        """The ISO code denoting the language text for Advisor's name and contact information."""
        ...

    @property
    def IsLimitedPartnership(self) -> bool:
        """Indicator to denote if the company is a limited partnership, which is a form of business structure comprised of a general partner and limited partners. 1 denotes it is a LP; otherwise 0."""
        ...

    @property
    def IsREIT(self) -> bool:
        """Indicator to denote if the company is a real estate investment trust (REIT). 1 denotes it is a REIT; otherwise 0."""
        ...

    @property
    def PrimaryMIC(self) -> str:
        """The MIC (market identifier code) of the PrimarySymbol of the company. See Data Appendix A for the relevant MIC to exchange name mapping."""
        ...

    @property
    def ReportStyle(self) -> int:
        """This refers to the financial template used to collect the company's financial statements. There are two report styles representing two different financial template structures. Report style "1" is most commonly used by US and Canadian companies, and Report style "3" is most commonly used by the rest of the universe. Contact your client manager for access to the respective templates."""
        ...

    @property
    def YearofEstablishment(self) -> str:
        """The year a company was founded."""
        ...

    @property
    def IsLimitedLiabilityCompany(self) -> bool:
        """Indicator to denote if the company is a limited liability company. 1 denotes it is a LLC; otherwise 0."""
        ...

    @property
    def ExpectedFiscalYearEnd(self) -> datetime.datetime:
        """The upcoming expected year end for the company. It is calculated based on current year end (from latest available annual report) + 1 year."""
        ...

    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...


class SecurityReference(ReusuableCLRObject):
    """Definition of the SecurityReference class"""

    @property
    def SecuritySymbol(self) -> str:
        """An arrangement of characters (often letters) representing a particular security listed on an exchange or otherwise traded publicly. Note: Morningstar's multi-share class symbols will often contain a "period" within the symbol; e.g. BRK.B for Berkshire Hathaway Class B."""
        ...

    @property
    def ExchangeId(self) -> str:
        """The Id representing the stock exchange that the particular share class is trading. See separate reference document for Exchange Mappings."""
        ...

    @property
    def CurrencyId(self) -> str:
        """3 Character ISO code of the currency that the exchange price is denominated in; i.e. the trading currency of the security. See separate reference document for Currency Mappings."""
        ...

    @property
    def IPODate(self) -> datetime.datetime:
        """The initial day that the share begins trading on a public exchange."""
        ...

    @property
    def IsDepositaryReceipt(self) -> bool:
        """Indicator to denote if the share class is a depository receipt. 1 denotes it is an ADR or GDR; otherwise 0."""
        ...

    @property
    def DepositaryReceiptRatio(self) -> float:
        """The number of underlying common shares backing each American Depository Receipt traded."""
        ...

    @property
    def SecurityType(self) -> str:
        """Each security will be assigned to one of the below security type classifications; - Common Stock (ST00000001) - Preferred Stock (ST00000002) - Units (ST000000A1)"""
        ...

    @property
    def ShareClassDescription(self) -> str:
        """Provides information when applicable such as whether the share class is Class A or Class B, an ADR, GDR, or a business development company (BDC). For preferred stocks, this field provides more detail about the preferred share class."""
        ...

    @property
    def ShareClassStatus(self) -> str:
        """At the ShareClass level; each share is assigned to 1 of 4 possible status classifications; (A) Active, (D) Deactive, (I) Inactive, or (O) Obsolete: - Active-Share class is currently trading in a public market, and we have fundamental data available. - Deactive-Share class was once Active, but is no longer trading due to share being delisted from the exchange. - Inactive-Share class is currently trading in a public market, but no fundamental data is available. - Obsolete-Share class was once Inactive, but is no longer trading due to share being delisted from the exchange."""
        ...

    @property
    def IsPrimaryShare(self) -> bool:
        """This indicator will denote if the indicated share is the primary share for the company. A "1" denotes the primary share, a "0" denotes a share that is not the primary share. The primary share is defined as the first share that a company IPO'd with and is still actively trading. If this share is no longer trading, we will denote the primary share as the share with the highest volume."""
        ...

    @property
    def IsDividendReinvest(self) -> bool:
        """Shareholder election plan to re-invest cash dividend into additional shares."""
        ...

    @property
    def IsDirectInvest(self) -> bool:
        """A plan to make it possible for individual investors to invest in public companies without going through a stock broker."""
        ...

    @property
    def InvestmentId(self) -> str:
        """Identifier assigned to each security Morningstar covers."""
        ...

    @property
    def IPOOfferPrice(self) -> float:
        """IPO offer price indicates the price at which an issuer sells its shares under an initial public offering (IPO). The offer price is set by issuer and its underwriters."""
        ...

    @property
    def DelistingDate(self) -> datetime.datetime:
        """The date on which an inactive security was delisted from an exchange."""
        ...

    @property
    def DelistingReason(self) -> str:
        """The reason for an inactive security's delisting from an exchange. The full list of Delisting Reason codes can be found within the Data Definitions- Appendix A DelistingReason Codes tab."""
        ...

    @property
    def MIC(self) -> str:
        """The MIC (market identifier code) of the related shareclass of the company. See Data Appendix A for the relevant MIC to exchange name mapping."""
        ...

    @property
    def CommonShareSubType(self) -> str:
        """Refers to the type of securities that can be found within the equity database. For the vast majority, this value will populate as null for regular common shares. For a minority of shareclasses, this will populate as either "Participating Preferred", "Closed-End Fund", "Foreign Share", or "Foreign Participated Preferred" which reflects our limited coverage of these types of securities within our equity database."""
        ...

    @property
    def IPOOfferPriceRange(self) -> str:
        """The estimated offer price range (low-high) for a new IPO. The field should be used until the final IPO price becomes available, as populated in the data field "IPOPrice"."""
        ...

    @property
    def ExchangeSubMarketGlobalId(self) -> str:
        """Classification to denote different Marketplace or Market tiers within a stock exchange."""
        ...

    @property
    def ConversionRatio(self) -> float:
        """The relationship between the chosen share class and the primary share class."""
        ...

    @property
    def ParValue(self) -> float:
        """Nominal value of a security determined by the issuing company."""
        ...

    @property
    def TradingStatus(self) -> bool:
        """Morningstar DataId: 1028"""
        ...

    @property
    def MarketDataID(self) -> str:
        """Morningstar DataId: 1029"""
        ...

    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...


class MultiPeriodField(typing.Generic[QuantConnect_Data_Fundamental_MultiPeriodField_T], ReusuableCLRObject, metaclass=abc.ABCMeta):
    """Abstract base class for multi-period fields"""

    NoValue: QuantConnect_Data_Fundamental_MultiPeriodField_T
    """No Value"""

    @property
    def TimeProvider(self) -> QuantConnect.ITimeProvider:
        """
        The time provider instance to use
        
        This property is protected.
        """
        ...

    @property
    @abc.abstractmethod
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def SecurityIdentifier(self) -> QuantConnect.SecurityIdentifier:
        """
        The target security identifier
        
        This property is protected.
        """
        ...

    @property
    @abc.abstractmethod
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> QuantConnect_Data_Fundamental_MultiPeriodField_T:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """
        Creates an empty instance
        
        This method is protected.
        """
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """
        Creates a new instance
        
        This method is protected.
        """
        ...

    @overload
    def __init__(self) -> None:
        """
        Creates an empty instance
        
        This method is protected.
        """
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """
        Creates a new instance
        
        This method is protected.
        """
        ...

    def ConvertPeriod(self, period: str) -> str:
        """
        Returns a string that represents the current object.
        
        This method is protected.
        """
        ...

    def GetPeriodNames(self) -> System.Collections.Generic.IEnumerable[str]:
        """Gets the list of available period names for the field"""
        ...

    def GetPeriodValue(self, period: str) -> QuantConnect_Data_Fundamental_MultiPeriodField_T:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, QuantConnect_Data_Fundamental_MultiPeriodField_T]:
        """Gets a dictionary of period names and values for the field"""
        ...

    def HasPeriodValue(self, period: str) -> bool:
        """
        Returns true if the field contains a value for the requested period
        
        :returns: True if the field contains a value for the requested period.
        """
        ...

    def HasValues(self) -> bool:
        """Returns true if the field has at least one value for one period"""
        ...

    def ToString(self) -> str:
        """Returns a string that represents the current object."""
        ...


class FinancialStatementsPeriodEndingDate(QuantConnect.Data.Fundamental.MultiPeriodField[datetime.datetime]):
    """The exact date that is given in the financial statements for each quarter's end."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> datetime.datetime:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> datetime.datetime:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> datetime.datetime:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> datetime.datetime:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> datetime.datetime:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> datetime.datetime:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> datetime.datetime:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> datetime.datetime:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, datetime.datetime]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FinancialStatementsFileDate(QuantConnect.Data.Fundamental.MultiPeriodField[datetime.datetime]):
    """Specific date on which a company released its filing to the public."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> datetime.datetime:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> datetime.datetime:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> datetime.datetime:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> datetime.datetime:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> datetime.datetime:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> datetime.datetime:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> datetime.datetime:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> datetime.datetime:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, datetime.datetime]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FinancialStatementsAccessionNumber(QuantConnect.Data.Fundamental.MultiPeriodField[str]):
    """The accession number is a unique number that EDGAR assigns to each submission as the submission is received."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> str:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> str:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> str:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> str:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> str:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> str:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> str:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, str]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FinancialStatementsFormType(QuantConnect.Data.Fundamental.MultiPeriodField[str]):
    """The type of filing of the report: for instance, 10-K (annual report) or 10-Q (quarterly report)."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> str:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> str:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> str:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> str:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> str:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> str:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> str:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> str:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, str]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PeriodAuditor(QuantConnect.Data.Fundamental.MultiPeriodField[str]):
    """The name of the auditor that performed the financial statement audit for the given period."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> str:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> str:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> str:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> str:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> str:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> str:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> str:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> str:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, str]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AuditorReportStatus(QuantConnect.Data.Fundamental.MultiPeriodField[str]):
    """Auditor opinion code will be one of the following for each annual period: Code Meaning UQ Unqualified Opinion UE Unqualified Opinion with Explanation QM Qualified - Due to change in accounting method QL Qualified - Due to litigation OT Qualified Opinion - Other AO Adverse Opinion DS Disclaim an opinion UA Unaudited"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> str:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> str:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> str:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> str:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> str:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> str:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> str:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> str:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, str]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InventoryValuationMethod(QuantConnect.Data.Fundamental.MultiPeriodField[str]):
    """Which method of inventory valuation was used - LIFO, FIFO, Average, Standard costs, Net realizable value, Others, LIFO and FIFO, FIFO and Average, FIFO and other, LIFO and Average, LIFO and other, Average and other, 3 or more methods, None"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> str:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> str:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> str:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> str:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> str:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> str:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> str:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> str:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, str]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NumberOfShareHolders(QuantConnect.Data.Fundamental.MultiPeriodField[int]):
    """The number of shareholders on record"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> int:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> int:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> int:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> int:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> int:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> int:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> int:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> int:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, int]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FinancialStatementsPeriodType(QuantConnect.Data.Fundamental.MultiPeriodField[str]):
    """The nature of the period covered by an individual set of financial results. The output can be: Quarter, Semi-annual or Annual. Assuming a 12-month fiscal year, quarter typically covers a three-month period, semi-annual a six-month period, and annual a twelve-month period. Annual could cover results collected either from preliminary results or an annual report"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> str:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> str:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> str:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> str:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> str:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> str:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> str:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> str:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, str]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalRiskBasedCapital(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The sum of Tier 1 and Tier 2 Capital. Tier 1 capital consists of common shareholders equity, perpetual preferred shareholders equity with non-cumulative dividends, retained earnings, and minority interests in the equity accounts of consolidated subsidiaries. Tier 2 capital consists of subordinated debt, intermediate-term preferred stock, cumulative and long-term preferred stock, and a portion of a bank's allowance for loan and lease losses."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class IncomeStatementFileDate(QuantConnect.Data.Fundamental.MultiPeriodField[datetime.datetime]):
    """Filing date of the Income Statement."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> datetime.datetime:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> datetime.datetime:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> datetime.datetime:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> datetime.datetime:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> datetime.datetime:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> datetime.datetime:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> datetime.datetime:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> datetime.datetime:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, datetime.datetime]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AmortizationIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The non-cash expense recognized on intangible assets over the benefit period of the asset."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class SecuritiesAmortizationIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The gradual elimination of a liability, such as a mortgage, in regular payments over a specified period of time. Such payments must be sufficient to cover both principal and interest."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CostOfRevenueIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The aggregate cost of goods produced and sold and services rendered during the reporting PeriodAsByte. It excludes all operating expenses such as depreciation, depletion, amortization, and SG&A. For the must have cost industry, if the number is not reported by the company, it will be calculated based on accounting equation. Cost of Revenue = Revenue - Operating Expenses - Operating Profit."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DepletionIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The non-cash expense recognized on natural resources (eg. Oil and mineral deposits) over the benefit period of the asset."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DepreciationIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The current period non-cash expense recognized on tangible assets used in the normal course of business, by allocating the cost of assets over their useful lives, in the Income Statement. Examples of tangible asset include buildings, production and equipment."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DepreciationAndAmortizationIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The sum of depreciation and amortization expense in the Income Statement. Depreciation is the non-cash expense recognized on tangible assets used in the normal course of business, by allocating the cost of assets over their useful lives Amortization is the non-cash expense recognized on intangible assets over the benefit period of the asset."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DepreciationAmortizationDepletionIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The sum of depreciation, amortization and depletion expense in the Income Statement. Depreciation is the non-cash expense recognized on tangible assets used in the normal course of business, by allocating the cost of assets over their useful lives Amortization is the non-cash expense recognized on intangible assets over the benefit period of the asset. Depletion is the non-cash expense recognized on natural resources (eg. Oil and mineral deposits) over the benefit period of the asset."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetIncomeDiscontinuousOperationsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """To be classified as discontinued operations, if both of the following conditions are met: 1: The operations and cash flow of the component have been or will be removed from the ongoing operations of the entity as a result of the disposal transaction, and 2: The entity will have no significant continuing involvement in the operations of the component after the disposal transaction. The discontinued operation is reported net of tax. Gains/Loss on Disposal of Discontinued Operations: Any gains or loss recognized on disposal of discontinued operations, which is the difference between the carrying value of the division and its fair value less costs to sell. Provision for Gain/Loss on Disposal: The amount of current expense charged in order to prepare for the disposal of discontinued operations."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ExciseTaxesIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Excise taxes are taxes paid when purchases are made on a specific good, such as gasoline. Excise taxes are often included in the price of the product. There are also excise taxes on activities, such as on wagering or on highway usage by trucks."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetIncomeExtraordinaryIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Gains (losses), whether arising from extinguishment of debt, prior period adjustments, or from other events or transactions, that are both unusual in nature and infrequent in occurrence thereby meeting the criteria for an event or transaction to be classified as an extraordinary item."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FeeRevenueAndOtherIncomeIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The aggregate amount of fees, commissions, and other income."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class GeneralAndAdministrativeExpenseIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The aggregate total of general managing and administering expenses for the company."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class GrossProfitIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Total revenue less cost of revenue. The number is as reported by the company on the income statement; however, the number will be calculated if it is not reported. This field is null if the cost of revenue is not given. Gross Profit = Total Revenue - Cost of Revenue."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InterestExpenseIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Relates to the general cost of borrowing money. It is the price that a lender charges a borrower for the use of the lender's money."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InterestExpenseNonOperatingIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Interest expense caused by long term financing activities; such as interest expense incurred on trading liabilities, commercial paper, long-term debt, capital leases, deposits, and all other borrowings."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InterestIncomeAfterProvisionForLoanLossIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Net interest and dividend income or expense, including any amortization and accretion (as applicable) of discounts and premiums, including consideration of the provisions for loan, lease, credit, and other related losses, if any."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InterestIncomeNonOperatingIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Interest income earned from long term financing activities."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetNonOperatingInterestIncomeExpenseIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Net-Non Operating interest income or expenses caused by financing activities."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class LossAdjustmentExpenseIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Losses generally refer to (1) the amount of reduction in the value of an insured's property caused by an insured peril, (2) the amount sought through an insured's claim, or (3) the amount paid on behalf of an insured under an insurance contract. Loss Adjustment Expenses is expenses incurred in the course of investigating and settling claims that includes any legal and adjusters' fees and the costs of paying claims and all related expenses."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class MinorityInterestsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Represents par or stated value of the subsidiary stock not owned by the parent company plus the minority interest's equity in the surplus of the subsidiary. This item includes preferred dividend averages on the minority preferred stock (preferred shares not owned by the reporting parent company). Minority interest also refers to stockholders who own less than 50% of a subsidiary's outstanding voting common stock. The minority stockholders hold an interest in the subsidiary's net assets and share earnings with the parent company."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetIncomeIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Includes all the operations (continuing and discontinued) and all the other income or charges (extraordinary, accounting changes, tax loss carry forward, and other gains and losses)."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetIncomeCommonStockholdersIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Net income minus the preferred dividends paid as presented in the Income Statement."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetIncomeContinuousOperationsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Revenue less expenses and taxes from the entity's ongoing operations and before income (loss) from: Preferred Dividends; Extraordinary Gains and Losses; Income from Cumulative Effects of Accounting Change; Discontinuing Operation; Income from Tax Loss Carry forward; Other Gains/Losses."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetInterestIncomeIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Total interest income minus total interest expense. It represents the difference between interest and dividends earned on interest- bearing assets and interest paid to depositors and other creditors."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetInvestmentIncomeIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Total of interest, dividends, and other earnings derived from the insurance company's invested assets minus the expenses associated with these investments. Excluded from this income are capital gains or losses as the result of the sale of assets, as well as any unrealized capital gains or losses."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalRevenueIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """All sales, business revenues and income that the company makes from its business operations, net of excise taxes. This applies for all companies and can be used as comparison for all industries. For Normal, Mining, Transportation and Utility templates companies, this is the sum of Operating Revenues, Excise Taxes and Fees. For Bank template companies, this is the sum of Net Interest Income and Non-Interest Income. For Insurance template companies, this is the sum of Premiums, Interest Income, Fees, Investment and Other Income."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NonInterestExpenseIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Any expenses that not related to interest. It includes labor and related expense, occupancy and equipment, commission, professional expense and contract services expenses, selling, general and administrative, research and development depreciation, amortization and depletion, and any other special income/charges."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NonInterestIncomeIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The total amount of non-interest income which may be derived from: (1) fees and commissions; (2) premiums earned; (3) equity investment; (4) the sale or disposal of assets; and (5) other sources not otherwise specified."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OperatingExpenseIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Operating expenses are primary recurring costs associated with central operations (other than cost of goods sold) that are incurred in order to generate sales."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OperatingIncomeIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Income from normal business operations after deducting cost of revenue and operating expenses. It does not include income from any investing activities."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OperatingRevenueIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Sales and income that the company makes from its business operations. This applies only to non-bank and insurance companies. For Utility template companies, this is the sum of revenue from electric, gas, transportation and other operating revenue. For Transportation template companies, this is the sum of revenue-passenger, revenue-cargo, and other operating revenue."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherIncomeExpenseIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Income or expense that comes from miscellaneous sources."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PolicyAcquisitionExpenseIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Costs that vary with and are primarily related to the acquisition of new and renewal insurance contracts. Also referred to as underwriting expenses."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetPolicyholderBenefitsAndClaimsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The net provision in current period for future policy benefits, claims, and claims settlement expenses incurred in the claims settlement process before the effects of reinsurance arrangements. The value is net of the effects of contracts assumed and ceded."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PreferredStockDividendsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The amount of dividends declared or paid in the period to preferred shareholders, or the amount for which the obligation to pay them dividends arose in the PeriodAsByte. Preferred dividends are the amount required for the current year only, and not for any amount required in past years."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalPremiumsEarnedIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Premiums earned is the portion of an insurance written premium which is considered "earned" by the insurer, based on the part of the policy period that the insurance has been in effect, and during which the insurer has been exposed to loss."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PretaxIncomeIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Reported income before the deduction or benefit of income taxes."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TaxProvisionIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Include any taxes on income, net of any investment tax credits for the current accounting PeriodAsByte."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CreditLossesProvisionIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A charge to income which represents an expense deemed adequate by management given the composition of a bank's credit portfolios, their probability of default, the economic environment and the allowance for credit losses already established. Specific provisions are established to reduce the book value of specific assets (primarily loans) to establish the amount expected to be recovered on the loans."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ResearchAndDevelopmentIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The aggregate amount of research and development expenses during the year."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class SellingAndMarketingExpenseIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The aggregate total amount of expenses directly related to the marketing or selling of products or services."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class SellingGeneralAndAdministrationIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Selling expenses are those directly related to the company's efforts to generate sales (e.g., sales salaries, commissions, advertising, delivery expenses). General and administrative expenses are expenses related to general administration of the company's operation (e.g., officers and office salaries, office supplies, telephone, accounting and legal services, and business licenses and fees)."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class SpecialIncomeChargesIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Earnings or losses attributable to occurrences or actions by the firm that is either infrequent or unusual."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalExpensesIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The sum of operating expense and cost of revenue. If the company does not give the reported number, it will be calculated by adding operating expense and cost of revenue."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InterestIncomeIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Income generated from interest-bearing deposits or accounts."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class EBITIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Earnings minus expenses (excluding interest and tax expenses)."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class EBITDAIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Earnings minus expenses (excluding interest, tax, depreciation, and amortization expenses)."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetIncomeContinuousOperationsNetMinorityInterestIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Revenue less expenses and taxes from the entity's ongoing operations net of minority interest and before income (loss) from: Preferred Dividends; Extraordinary Gains and Losses; Income from Cumulative Effects of Accounting Change; Discontinuing Operation; Income from Tax Loss Carry forward; Other Gains/Losses."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CededPremiumsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The amount of premiums paid and payable to another insurer as a result of reinsurance arrangements in order to exchange for that company accepting all or part of insurance on a risk or exposure. This item is usually only available for insurance industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CommissionExpensesIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CreditCardIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Income earned from credit card services including late, over limit, and annual fees. This item is usually only available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DividendIncomeIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Dividends earned from equity investment securities. This item is usually only available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class EarningsFromEquityInterestIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The earnings from equity interest can be a result of any of the following: Income from earnings distribution of the business, either as dividends paid to corporate shareholders or as drawings in a partnership; Capital gain realized upon sale of the business; Capital gain realized from selling his or her interest to other partners. This item is usually not available for bank and insurance industries."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class EquipmentIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Equipment expenses include depreciation, repairs, rentals, and service contract costs. This also includes equipment purchases which do not qualify for capitalization in accordance with the entity's accounting policy. This item may also include furniture expenses. This item is usually only available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ExplorationDevelopmentAndMineralPropertyLeaseExpensesIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Costs incurred in identifying areas that may warrant examination and in examining specific areas that are considered to have prospects of containing energy or metal reserves, including costs of drilling exploratory wells. Development expense is the capitalized costs incurred to obtain access to proved reserves and to provide facilities for extracting, treating, gathering and storing the energy and metal. Mineral property includes oil and gas wells, mines, and other natural deposits (including geothermal deposits). The payment for leasing those properties is called mineral property lease expense. Exploration expense is included in operation expenses for mining industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FeesAndCommissionsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Total fees and commissions earned from providing services such as leasing of space or maintaining: (1) depositor accounts; (2) transfer agent; (3) fiduciary and trust; (4) brokerage and underwriting; (5) mortgage; (6) credit cards; (7) correspondent clearing; and (8) other such services and activities performed for others. This item is usually available for bank and insurance industries."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ForeignExchangeTradingGainsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Trading revenues that result from foreign exchange exposures such as cash instruments and off-balance sheet derivative instruments. This item is usually only available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FuelIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The aggregate amount of fuel cost for current period associated with the revenue generation. This item is usually only available for transportation industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FuelAndPurchasePowerIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cost of fuel, purchase power and gas associated with revenue generation. This item is usually only available for utility industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class GainOnSaleOfBusinessIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The amount of excess earned in comparison to fair value when selling a business. This item is usually not available for insurance industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class GainOnSaleOfPPEIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The amount of excess earned in comparison to the net book value for sale of property, plant, equipment. This item is usually not available for bank and insurance industries."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class GainOnSaleOfSecurityIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The amount of excess earned in comparison to the original purchase value of the security."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class GrossPremiumsWrittenIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Total premiums generated from all policies written by an insurance company within a given period of time. This item is usually only available for insurance industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ImpairmentOfCapitalAssetsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Impairments are considered to be permanent, which is a downward revaluation of fixed assets. If the sum of all estimated future cash flows is less than the carrying value of the asset, then the asset would be considered impaired and would have to be written down to its fair value. Once an asset is written down, it may only be written back up under very few circumstances. Usually the company uses the sum of undiscounted future cash flows to determine if the impairment should occur, and uses the sum of discounted future cash flows to make the impairment judgment. The impairment decision emphasizes on capital assets' future profit collection ability."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class IncreaseDecreaseInNetUnearnedPremiumReservesIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Premium might contain a portion of the amount that has been paid in advance for insurance that has not yet been provided, which is called unearned premium. If either party cancels the contract, the insurer must have the unearned premium ready to refund. Hence, the amount of premium reserve maintained by insurers is called unearned premium reserves, which is prepared for liquidation. This item is usually only available for insurance industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InsuranceAndClaimsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Insurance and claims are the expenses in the period incurred with respect to protection provided by insurance entities against risks other than risks associated with production (which is allocated to cost of sales). This item is usually not available for insurance industries."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InterestExpenseForDepositIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Includes interest expense on the following deposit accounts: Interest-bearing Demand deposit; Checking account; Savings account; Deposit in foreign offices; Money Market Certificates & Deposit Accounts. This item is usually only available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InterestExpenseForFederalFundsSoldAndSecuritiesPurchaseUnderAgreementsToResellIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Gross expenses on the purchase of Federal funds at a specified price with a simultaneous agreement to sell the same to the same counterparty at a fixed or determinable price at a future date. This item is usually only available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InterestExpenseForLongTermDebtAndCapitalSecuritiesIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The aggregate interest expenses incurred on long-term borrowings and any interest expenses on fixed assets (property, plant, equipment) that are leased due longer than one year. This item is usually only available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InterestExpenseForShortTermDebtIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The aggregate interest expenses incurred on short-term borrowings and any interest expenses on fixed assets (property, plant, equipment) that are leased within one year. This item is usually only available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InterestIncomeFromDepositsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Interest income generated from all deposit accounts. This item is usually only available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InterestIncomeFromFederalFundsSoldAndSecuritiesPurchaseUnderAgreementsToResellIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The carrying value of funds outstanding loaned in the form of security resale agreements if the agreement requires the purchaser to resell the identical security purchased or a security that meets the definition of ""substantially the same"" in the case of a dollar roll. Also includes purchases of participations in pools of securities that are subject to a resale agreement; This category includes all interest income generated from federal funds sold and securities purchases under agreements to resell; This category includes all interest income generated from federal funds sold and securities purchases under agreements to resell."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InterestIncomeFromLeasesIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Includes interest and fee income generated by direct lease financing. This item is usually only available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InterestIncomeFromLoansIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Loan is a common field to banks. Interest Income from Loans is interest and fee income generated from all loans, which includes Commercial loans; Credit loans; Other consumer loans; Real Estate - Construction; Real Estate - Mortgage; Foreign loans. Banks earn interest from loans. This item is usually only available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InterestIncomeFromLoansAndLeaseIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Total interest and fee income generated by loans and lease. This item is usually only available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InterestIncomeFromSecuritiesIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Represents total interest and dividend income from U.S. Treasury securities, U.S. government agency and corporation obligations, securities issued by states and political subdivisions, other domestic debt securities, foreign debt securities, and equity securities (including investments in mutual funds). Excludes interest income from securities held in trading accounts. This item is usually only available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InvestmentBankingProfitIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Includes (1) underwriting revenue (the spread between the resale price received and the cost of the securities and related expenses) generated through the purchasing, distributing and reselling of new issues of securities (alternatively, could be a secondary offering of a large block of previously issued securities); and (2) fees earned for mergers, acquisitions, divestitures, restructurings, and other types of financial advisory services. This item is usually only available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class MaintenanceAndRepairsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The aggregate amount of maintenance and repair expenses in the current period associated with the revenue generation. Mainly for fixed assets. This item is usually only available for transportation industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetForeignExchangeGainLossIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The aggregate foreign currency translation gain or loss (both realized and unrealized) included as part of revenue. This item is usually only available for insurance industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetOccupancyExpenseIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Occupancy expense may include items, such as depreciation of facilities and equipment, lease expenses, property taxes and property and casualty insurance expense. This item is usually only available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetPremiumsWrittenIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Net premiums written are gross premiums written less ceded premiums. This item is usually only available for insurance industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetRealizedGainLossOnInvestmentsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Gain or loss realized during the period of time for all kinds of investment securities. In might include trading, available-for-sale, or held-to-maturity securities. This item is usually only available for insurance industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OccupancyAndEquipmentIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Includes total expenses of occupancy and equipment. This item is usually only available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OperationAndMaintenanceIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The aggregate amount of operation and maintenance expenses, which is the one important operating expense for the utility industry. It includes any costs related to production and maintenance cost of the property during the revenue generation process. This item is usually only available for mining and utility industries."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherCustomerServicesIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Represents fees and commissions earned from provide other services. This item is usually only available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherInterestExpenseIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """All other interest expense that is not otherwise classified"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherInterestIncomeIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """All other interest income that is not otherwise classified"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherNonInterestExpenseIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """All other non interest expense that is not otherwise classified"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherSpecialChargesIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """All other special charges that are not otherwise classified"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherTaxesIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Any taxes that are not part of income taxes. This item is usually not available for bank and insurance industries."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PolicyholderBenefitsCededIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The provision in current period for future policy benefits, claims, and claims settlement, which is under reinsurance arrangements. This item is usually only available for insurance industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PolicyholderBenefitsGrossIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The gross amount of provision in current period for future policyholder benefits, claims, and claims settlement, incurred in the claims settlement process before the effects of reinsurance arrangements. This item is usually only available for insurance industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PolicyholderDividendsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Payments made or credits extended to the insured by the company, usually at the end of a policy year results in reducing the net insurance cost to the policyholder. Such dividends may be paid in cash to the insured or applied by the insured as reductions of the premiums due for the next policy year. This item is usually only available for insurance industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PolicyholderInterestIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The periodic income payment provided to the annuitant by the insurance company, which is determined by the assumed interest rate (AIR) and other factors. This item is usually only available for insurance industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ProfessionalExpenseAndContractServicesExpenseIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Professional and contract service expense includes cost reimbursements for support services related to contracted projects, outsourced management, technical and staff support. This item is usually only available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ProvisionForDoubtfulAccountsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Amount of the current period expense charged against operations, the offset which is generally to the allowance for doubtful accounts for the purpose of reducing receivables, including notes receivable, to an amount that approximates their net realizable value (the amount expected to be collected). The category includes provision for loan losses, provision for any doubtful account receivable, and bad debt expenses. This item is usually not available for bank and insurance industries."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class RentAndLandingFeesIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Rent fees are the cost of occupying space during the accounting PeriodAsByte. Landing fees are a change paid to an airport company for landing at a particular airport. This item is not available for insurance industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class RestructuringAndMergernAcquisitionIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Expenses are related to restructuring, merger, or acquisitions. Restructuring expenses are charges associated with the consolidation and relocation of operations, disposition or abandonment of operations or productive assets. Merger and acquisition expenses are the amount of costs of a business combination including legal, accounting, and other costs that were charged to expense during the PeriodAsByte."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class SalariesAndWagesIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """All salary, wages, compensation, management fees, and employee benefit expenses."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class SecuritiesActivitiesIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Income/Loss from Securities and Activities"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ServiceChargeOnDepositorAccountsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Includes any service charges on following accounts: Demand Deposit; Checking account; Savings account; Deposit in foreign offices; ESCROW accounts; Money Market Certificates & Deposit accounts, CDs (Negotiable Certificates of Deposits); NOW Accounts (Negotiable Order of Withdrawal); IRAs (Individual Retirement Accounts). This item is usually only available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TradingGainLossIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A broker-dealer or other financial entity may buy and sell securities exclusively for its own account, sometimes referred to as proprietary trading. The profit or loss is measured by the difference between the acquisition cost and the selling price or current market or fair value. The net gain or loss, includes both realized and unrealized, from trading cash instruments, equities and derivative contracts (including commodity contracts) that has been recognized during the accounting period for the broker dealer or other financial entity's own account. This item is typically available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TrustFeesbyCommissionsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Bank manages funds on behalf of its customers through the operation of various trust accounts. Any fees earned through managing those funds are called trust fees, which are recognized when earned. This item is typically available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class UnderwritingExpensesIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Also known as Policy Acquisition Costs; and reported by insurance companies. The cost incurred by an insurer when deciding whether to accept or decline a risk; may include meetings with the insureds or brokers, actuarial review of loss history, or physical inspections of exposures. Also, expenses deducted from insurance company revenues (including incurred losses and acquisition costs) to determine underwriting profit."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class WriteOffIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A reduction in the value of an asset or earnings by the amount of an expense or loss."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherNonInterestIncomeIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Usually available for the banking industry. This is Non-Interest Income that is not otherwise classified."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AmortizationOfIntangiblesIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetIncomeFromContinuingAndDiscontinuedOperationIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Net Income from Continuing Operations and Discontinued Operations, added together."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetIncomeFromTaxLossCarryforwardIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Occurs if a company has had a net loss from operations on a previous year that can be carried forward to reduce net income for tax purposes."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherOperatingExpensesIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The aggregate amount of operating expenses associated with normal operations. Will not include any gain, loss, benefit, or income; and its value reported by the company should be <0."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalMoneyMarketInvestmentsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The sum of the money market investments held by a bank's depositors, which are FDIC insured."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ReconciledCostOfRevenueIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The Cost Of Revenue plus Depreciation, Depletion & Amortization from the IncomeStatement; minus Depreciation, Depletion & Amortization from the Cash Flow Statement"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ReconciledDepreciationIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Is Depreciation, Depletion & Amortization from the Cash Flow Statement"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NormalizedIncomeIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This calculation represents earnings adjusted for items that are irregular or unusual in nature, and/or are non-recurring. This can be used to fairly measure a company's profitability. This is calculated using Net Income from Continuing Operations plus/minus any tax affected unusual Items and Goodwill Impairments/Write Offs."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetIncomeFromContinuingOperationNetMinorityInterestIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Revenue less expenses and taxes from the entity's ongoing operations net of minority interest and before income (loss) from: Preferred Dividends; Extraordinary Gains and Losses; Income from Cumulative Effects of Accounting Change; Discontinuing Operation; Income from Tax Loss Carry forward; Other Gains/Losses."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class GainLossonSaleofAssetsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Any gain (loss) recognized on the sale of assets or a sale which generates profit or loss, which is a difference between sales price and net book value at the disposal time."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class GainonSaleofLoansIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Gain on sale of any loans investment."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class GainonSaleofInvestmentPropertyIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Gain on the disposal of investment property."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class LossonExtinguishmentofDebtIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Loss on extinguishment of debt is the accounting loss that results from a debt extinguishment. A debt shall be accounted for as having been extinguished in a number of circumstances, including when it has been settled through repayment or replacement by another liability. It generally results in an accounting gain or loss. Amount represents the difference between the fair value of the payments made and the carrying amount of the debt at the time of its extinguishment."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class EarningsfromEquityInterestNetOfTaxIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Income from other equity interest reported after Provision of Tax. This applies to all industries."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetIncomeIncludingNoncontrollingInterestsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Net income of the group after the adjustment of all expenses and benefit."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherunderPreferredStockDividendIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Dividend paid to the preferred shareholders before the common stock shareholders."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class StaffCostsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Total staff cost which is paid to the employees that is not part of Selling, General, and Administration expense."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class SocialSecurityCostsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Benefits paid to the employees in respect of their work."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PensionCostsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The expense that a company incurs each year by providing a pension plan for its employees. Major expenses in the pension cost include employer matching contributions and management fees."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherOperatingIncomeTotalIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Total Other Operating Income- including interest income, dividend income and other types of operating income."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class IncomefromAssociatesandOtherParticipatingInterestsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Total income from the associates and joint venture via investment, accounted for in the Non-Operating section."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalOtherFinanceCostIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Any other finance cost which is not clearly defined in the Non-Operating section."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class GrossDividendPaymentIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Total amount paid in dividends to investors- this includes dividends paid on equity and non-equity shares."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FeesandCommissionIncomeIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Fees and commission income earned by bank and insurance companies on the rendering services."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FeesandCommissionExpenseIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cost incurred by bank and insurance companies for fees and commission income."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetTradingIncomeIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Any trading income on the securities."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherStaffCostsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Other costs in incurred in lieu of the employees that cannot be identified by other specific items in the Staff Costs section."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class GainonInvestmentPropertiesIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Gain on disposal and change in fair value of investment properties."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AverageDilutionEarningsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Adjustments to reported net income to calculate Diluted EPS, by assuming that all convertible instruments are converted to Common Equity. The adjustments usually include the interest expense of debentures when assumed converted and preferred dividends of convertible preferred stock when assumed converted."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class GainLossonFinancialInstrumentsDesignatedasCashFlowHedgesIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Gain/Loss through hedging activities."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class GainLossonDerecognitionofAvailableForSaleFinancialAssetsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Gain/loss on the write-off of financial assets available-for-sale."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NegativeGoodwillImmediatelyRecognizedIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Negative Goodwill recognized in the Income Statement. Negative Goodwill arises where the net assets at the date of acquisition, fairly valued, falls below the cost of acquisition."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class GainsLossesonFinancialInstrumentsDuetoFairValueAdjustmentsinHedgeAccountingTotalIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Gain or loss on derivatives investment due to the fair value adjustment."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ImpairmentLossesReversalsFinancialInstrumentsNetIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Impairment or reversal of impairment on financial instrument such as derivative. This is a contra account under Total Revenue in banks."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ClaimsandPaidIncurredIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """All reported claims arising out of incidents in that year are considered incurred grouped with claims paid out."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ReinsuranceRecoveriesClaimsandBenefitsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Claim on the reinsurance company and take the benefits."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeinInsuranceLiabilitiesNetofReinsuranceIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Income/Expense due to changes between periods in insurance liabilities."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeinInvestmentContractIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Income/Expense due to changes between periods in Investment Contracts."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CreditRiskProvisionsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Provision for the risk of loss of principal or loss of a financial reward stemming from a borrower's failure to repay a loan or otherwise meet a contractual obligation. Credit risk arises whenever a borrower is expecting to use future cash flows to pay a current debt. Investors are compensated for assuming credit risk by way of interest payments from the borrower or issuer of a debt obligation. This is a contra account under Total Revenue in banks."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class WagesandSalariesIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This is the portion under Staff Costs that represents salary paid to the employees in respect of their work."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherNonOperatingIncomeExpensesIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Total other income and expense of the company that cannot be identified by other specific items in the Non-Operating section."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherNonOperatingIncomeIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Other income of the company that cannot be identified by other specific items in the Non-Operating section."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherNonOperatingExpensesIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Other expenses of the company that cannot be identified by other specific items in the Non-Operating section."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalUnusualItemsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Total unusual items including Negative Goodwill."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalUnusualItemsExcludingGoodwillIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The sum of all the identifiable operating and non-operating unusual items."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TaxRateForCalcsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Tax rate used for Morningstar calculations."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TaxEffectOfUnusualItemsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Tax effect of the usual items"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NormalizedEBITDAIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """EBITDA less Total Unusual Items"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class StockBasedCompensationIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The cost to the company for granting stock options to reward employees."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DilutedNIAvailtoComStockholdersIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Net income to calculate Diluted EPS, accounting for adjustments assuming that all the convertible instruments are being converted to Common Equity."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InvestmentContractLiabilitiesIncurredIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Income/Expenses due to the insurer's liabilities incurred in Investment Contracts."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ReinsuranceRecoveriesofInvestmentContractIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Income/Expense due to recoveries from reinsurers for Investment Contracts."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalDividendPaymentofEquitySharesIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Total amount paid in dividends to equity securities investors."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalDividendPaymentofNonEquitySharesIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Total amount paid in dividends to Non-Equity securities investors."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeinTheGrossProvisionforUnearnedPremiumsIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The change in the amount of the unearned premium reserves maintained by insurers."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeinTheGrossProvisionforUnearnedPremiumsReinsurersShareIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The change in the amount of unearned premium reserve to be covered by reinsurers."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ClaimsandChangeinInsuranceLiabilitiesIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Income/Expense due to the insurer's changes in insurance liabilities."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ReinsuranceRecoveriesofInsuranceLiabilitiesIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Income/Expense due to recoveries from reinsurers for insurance liabilities."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalOperatingIncomeAsReportedIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Operating profit/loss as reported by the company, may be the same or not the same as Morningstar's standardized definition."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherGAIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Other General and Administrative Expenses not categorized that the company incurs that are not directly tied to a specific function such as manufacturing, production, or sales."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherCostofRevenueIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Other costs associated with the revenue-generating activities of the company not categorized above."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class RentandLandingFeesCostofRevenueIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Costs paid to use the facilities necessary to generate revenue during the accounting PeriodAsByte."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DDACostofRevenueIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Costs of depreciation and amortization on assets used for the revenue-generating activities during the accounting period"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class RentExpenseSupplementalIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The sum of all rent expenses incurred by the company for operating leases during the year, it is a supplemental value which would be reported outside consolidated statements or consolidated statement's footnotes."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NormalizedPreTaxIncomeIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This calculation represents pre-tax earnings adjusted for items that are irregular or unusual in nature, and/or are non-recurring. This can be used to fairly measure a company's profitability. This is calculated using Pre-Tax Income plus/minus any unusual Items and Goodwill Impairments/Write Offs."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ResearchAndDevelopmentExpensesSupplementalIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The aggregate amount of research and development expenses during the year. It is a supplemental value which would be reported outside consolidated statements."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DepreciationSupplementalIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The current period expense charged against earnings on tangible asset over its useful life. It is a supplemental value which would be reported outside consolidated statements."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AmortizationSupplementalIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The current period expense charged against earnings on intangible asset over its useful life. It is a supplemental value which would be reported outside consolidated statements."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalRevenueAsReportedIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Total revenue as reported by the company, may be the same or not the same as Morningstar's standardized definition."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OperatingExpenseAsReportedIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Operating expense as reported by the company, may be the same or not the same as Morningstar's standardized definition."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NormalizedIncomeAsReportedIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Earnings adjusted for items that are irregular or unusual in nature, and/or are non-recurring. This can be used to fairly measure a company's profitability. This is as reported by the company, may be the same or not the same as Morningstar's standardized definition."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NormalizedEBITDAAsReportedIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """EBITDA less Total Unusual Items. This is as reported by the company, may be the same or not the same as Morningstar's standardized definition."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NormalizedEBITAsReportedIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """EBIT less Total Unusual Items. This is as reported by the company, may be the same or not the same as Morningstar's standardized definition."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NormalizedOperatingProfitAsReportedIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Operating profit adjusted for items that are irregular or unusual in nature, and/or are non-recurring. This can be used to fairly measure a company's profitability. This is as reported by the company, may be the same or not the same as Morningstar's standardized definition."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class EffectiveTaxRateAsReportedIncomeStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The average tax rate for the period as reported by the company, may be the same or not the same as Morningstar's standardized definition."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class IncomeStatement(ReusuableCLRObject):
    """Definition of the IncomeStatement class"""

    @property
    def ISFileDate(self) -> QuantConnect.Data.Fundamental.IncomeStatementFileDate:
        """Filing date of the Income Statement."""
        ...

    @property
    def Amortization(self) -> QuantConnect.Data.Fundamental.AmortizationIncomeStatement:
        """The non-cash expense recognized on intangible assets over the benefit period of the asset."""
        ...

    @property
    def SecuritiesAmortization(self) -> QuantConnect.Data.Fundamental.SecuritiesAmortizationIncomeStatement:
        """The gradual elimination of a liability, such as a mortgage, in regular payments over a specified period of time. Such payments must be sufficient to cover both principal and interest."""
        ...

    @property
    def CostOfRevenue(self) -> QuantConnect.Data.Fundamental.CostOfRevenueIncomeStatement:
        """The aggregate cost of goods produced and sold and services rendered during the reporting period. It excludes all operating expenses such as depreciation, depletion, amortization, and SG&A. For the must have cost industry, if the number is not reported by the company, it will be calculated based on accounting equation. Cost of Revenue = Revenue - Operating Expenses - Operating Profit."""
        ...

    @property
    def Depletion(self) -> QuantConnect.Data.Fundamental.DepletionIncomeStatement:
        """The non-cash expense recognized on natural resources (eg. Oil and mineral deposits) over the benefit period of the asset."""
        ...

    @property
    def Depreciation(self) -> QuantConnect.Data.Fundamental.DepreciationIncomeStatement:
        """The current period non-cash expense recognized on tangible assets used in the normal course of business, by allocating the cost of assets over their useful lives, in the Income Statement. Examples of tangible asset include buildings, production and equipment."""
        ...

    @property
    def DepreciationAndAmortization(self) -> QuantConnect.Data.Fundamental.DepreciationAndAmortizationIncomeStatement:
        """The sum of depreciation and amortization expense in the Income Statement. Depreciation is the non-cash expense recognized on tangible assets used in the normal course of business, by allocating the cost of assets over their useful lives Amortization is the non-cash expense recognized on intangible assets over the benefit period of the asset."""
        ...

    @property
    def DepreciationAmortizationDepletion(self) -> QuantConnect.Data.Fundamental.DepreciationAmortizationDepletionIncomeStatement:
        """The sum of depreciation, amortization and depletion expense in the Income Statement. Depreciation is the non-cash expense recognized on tangible assets used in the normal course of business, by allocating the cost of assets over their useful lives Amortization is the non-cash expense recognized on intangible assets over the benefit period of the asset. Depletion is the non-cash expense recognized on natural resources (eg. Oil and mineral deposits) over the benefit period of the asset."""
        ...

    @property
    def NetIncomeDiscontinuousOperations(self) -> QuantConnect.Data.Fundamental.NetIncomeDiscontinuousOperationsIncomeStatement:
        """To be classified as discontinued operations, if both of the following conditions are met: 1: The operations and cash flow of the component have been or will be removed from the ongoing operations of the entity as a result of the disposal transaction, and 2: The entity will have no significant continuing involvement in the operations of the component after the disposal transaction. The discontinued operation is reported net of tax. Gains/Loss on Disposal of Discontinued Operations: Any gains or loss recognized on disposal of discontinued operations, which is the difference between the carrying value of the division and its fair value less costs to sell. Provision for Gain/Loss on Disposal: The amount of current expense charged in order to prepare for the disposal of discontinued operations."""
        ...

    @property
    def ExciseTaxes(self) -> QuantConnect.Data.Fundamental.ExciseTaxesIncomeStatement:
        """Excise taxes are taxes paid when purchases are made on a specific good, such as gasoline. Excise taxes are often included in the price of the product. There are also excise taxes on activities, such as on wagering or on highway usage by trucks."""
        ...

    @property
    def NetIncomeExtraordinary(self) -> QuantConnect.Data.Fundamental.NetIncomeExtraordinaryIncomeStatement:
        """Gains (losses), whether arising from extinguishment of debt, prior period adjustments, or from other events or transactions, that are both unusual in nature and infrequent in occurrence thereby meeting the criteria for an event or transaction to be classified as an extraordinary item."""
        ...

    @property
    def FeeRevenueAndOtherIncome(self) -> QuantConnect.Data.Fundamental.FeeRevenueAndOtherIncomeIncomeStatement:
        """The aggregate amount of fees, commissions, and other income."""
        ...

    @property
    def GeneralAndAdministrativeExpense(self) -> QuantConnect.Data.Fundamental.GeneralAndAdministrativeExpenseIncomeStatement:
        """The aggregate total of general managing and administering expenses for the company."""
        ...

    @property
    def GrossProfit(self) -> QuantConnect.Data.Fundamental.GrossProfitIncomeStatement:
        """Total revenue less cost of revenue. The number is as reported by the company on the income statement; however, the number will be calculated if it is not reported. This field is null if the cost of revenue is not given. Gross Profit = Total Revenue - Cost of Revenue."""
        ...

    @property
    def InterestExpense(self) -> QuantConnect.Data.Fundamental.InterestExpenseIncomeStatement:
        """Relates to the general cost of borrowing money. It is the price that a lender charges a borrower for the use of the lender's money."""
        ...

    @property
    def InterestExpenseNonOperating(self) -> QuantConnect.Data.Fundamental.InterestExpenseNonOperatingIncomeStatement:
        """Interest expense caused by long term financing activities; such as interest expense incurred on trading liabilities, commercial paper, long-term debt, capital leases, deposits, and all other borrowings."""
        ...

    @property
    def InterestIncomeAfterProvisionForLoanLoss(self) -> QuantConnect.Data.Fundamental.InterestIncomeAfterProvisionForLoanLossIncomeStatement:
        """Net interest and dividend income or expense, including any amortization and accretion (as applicable) of discounts and premiums, including consideration of the provisions for loan, lease, credit, and other related losses, if any."""
        ...

    @property
    def InterestIncomeNonOperating(self) -> QuantConnect.Data.Fundamental.InterestIncomeNonOperatingIncomeStatement:
        """Interest income earned from long term financing activities."""
        ...

    @property
    def NetNonOperatingInterestIncomeExpense(self) -> QuantConnect.Data.Fundamental.NetNonOperatingInterestIncomeExpenseIncomeStatement:
        """Net-Non Operating interest income or expenses caused by financing activities."""
        ...

    @property
    def LossAdjustmentExpense(self) -> QuantConnect.Data.Fundamental.LossAdjustmentExpenseIncomeStatement:
        """Losses generally refer to (1) the amount of reduction in the value of an insured's property caused by an insured peril, (2) the amount sought through an insured's claim, or (3) the amount paid on behalf of an insured under an insurance contract. Loss Adjustment Expenses is expenses incurred in the course of investigating and settling claims that includes any legal and adjusters' fees and the costs of paying claims and all related expenses."""
        ...

    @property
    def MinorityInterests(self) -> QuantConnect.Data.Fundamental.MinorityInterestsIncomeStatement:
        """Represents par or stated value of the subsidiary stock not owned by the parent company plus the minority interest's equity in the surplus of the subsidiary. This item includes preferred dividend averages on the minority preferred stock (preferred shares not owned by the reporting parent company). Minority interest also refers to stockholders who own less than 50% of a subsidiary's outstanding voting common stock. The minority stockholders hold an interest in the subsidiary's net assets and share earnings with the parent company."""
        ...

    @property
    def NetIncome(self) -> QuantConnect.Data.Fundamental.NetIncomeIncomeStatement:
        """Includes all the operations (continuing and discontinued) and all the other income or charges (extraordinary, accounting changes, tax loss carry forward, and other gains and losses)."""
        ...

    @property
    def NetIncomeCommonStockholders(self) -> QuantConnect.Data.Fundamental.NetIncomeCommonStockholdersIncomeStatement:
        """Net income minus the preferred dividends paid as presented in the Income Statement."""
        ...

    @property
    def NetIncomeContinuousOperations(self) -> QuantConnect.Data.Fundamental.NetIncomeContinuousOperationsIncomeStatement:
        """Revenue less expenses and taxes from the entity's ongoing operations and before income (loss) from: Preferred Dividends; Extraordinary Gains and Losses; Income from Cumulative Effects of Accounting Change; Discontinuing Operation; Income from Tax Loss Carry forward; Other Gains/Losses."""
        ...

    @property
    def NetInterestIncome(self) -> QuantConnect.Data.Fundamental.NetInterestIncomeIncomeStatement:
        """Total interest income minus total interest expense. It represents the difference between interest and dividends earned on interest- bearing assets and interest paid to depositors and other creditors."""
        ...

    @property
    def NetInvestmentIncome(self) -> QuantConnect.Data.Fundamental.NetInvestmentIncomeIncomeStatement:
        """Total of interest, dividends, and other earnings derived from the insurance company's invested assets minus the expenses associated with these investments. Excluded from this income are capital gains or losses as the result of the sale of assets, as well as any unrealized capital gains or losses."""
        ...

    @property
    def TotalRevenue(self) -> QuantConnect.Data.Fundamental.TotalRevenueIncomeStatement:
        """All sales, business revenues and income that the company makes from its business operations, net of excise taxes. This applies for all companies and can be used as comparison for all industries. For Normal, Mining, Transportation and Utility templates companies, this is the sum of Operating Revenues, Excise Taxes and Fees. For Bank template companies, this is the sum of Net Interest Income and Non-Interest Income. For Insurance template companies, this is the sum of Premiums, Interest Income, Fees, Investment and Other Income."""
        ...

    @property
    def NonInterestExpense(self) -> QuantConnect.Data.Fundamental.NonInterestExpenseIncomeStatement:
        """Any expenses that not related to interest. It includes labor and related expense, occupancy and equipment, commission, professional expense and contract services expenses, selling, general and administrative, research and development depreciation, amortization and depletion, and any other special income/charges."""
        ...

    @property
    def NonInterestIncome(self) -> QuantConnect.Data.Fundamental.NonInterestIncomeIncomeStatement:
        """The total amount of non-interest income which may be derived from: (1) fees and commissions; (2) premiums earned; (3) equity investment; (4) the sale or disposal of assets; and (5) other sources not otherwise specified."""
        ...

    @property
    def OperatingExpense(self) -> QuantConnect.Data.Fundamental.OperatingExpenseIncomeStatement:
        """Operating expenses are primary recurring costs associated with central operations (other than cost of goods sold) that are incurred in order to generate sales."""
        ...

    @property
    def OperatingIncome(self) -> QuantConnect.Data.Fundamental.OperatingIncomeIncomeStatement:
        """Income from normal business operations after deducting cost of revenue and operating expenses. It does not include income from any investing activities."""
        ...

    @property
    def OperatingRevenue(self) -> QuantConnect.Data.Fundamental.OperatingRevenueIncomeStatement:
        """Sales and income that the company makes from its business operations. This applies only to non-bank and insurance companies. For Utility template companies, this is the sum of revenue from electric, gas, transportation and other operating revenue. For Transportation template companies, this is the sum of revenue-passenger, revenue-cargo, and other operating revenue."""
        ...

    @property
    def OtherIncomeExpense(self) -> QuantConnect.Data.Fundamental.OtherIncomeExpenseIncomeStatement:
        """Income or expense that comes from miscellaneous sources."""
        ...

    @property
    def PolicyAcquisitionExpense(self) -> QuantConnect.Data.Fundamental.PolicyAcquisitionExpenseIncomeStatement:
        """Costs that vary with and are primarily related to the acquisition of new and renewal insurance contracts. Also referred to as underwriting expenses."""
        ...

    @property
    def NetPolicyholderBenefitsAndClaims(self) -> QuantConnect.Data.Fundamental.NetPolicyholderBenefitsAndClaimsIncomeStatement:
        """The net provision in current period for future policy benefits, claims, and claims settlement expenses incurred in the claims settlement process before the effects of reinsurance arrangements. The value is net of the effects of contracts assumed and ceded."""
        ...

    @property
    def PreferredStockDividends(self) -> QuantConnect.Data.Fundamental.PreferredStockDividendsIncomeStatement:
        """The amount of dividends declared or paid in the period to preferred shareholders, or the amount for which the obligation to pay them dividends arose in the period. Preferred dividends are the amount required for the current year only, and not for any amount required in past years."""
        ...

    @property
    def TotalPremiumsEarned(self) -> QuantConnect.Data.Fundamental.TotalPremiumsEarnedIncomeStatement:
        """Premiums earned is the portion of an insurance written premium which is considered "earned" by the insurer, based on the part of the policy period that the insurance has been in effect, and during which the insurer has been exposed to loss."""
        ...

    @property
    def PretaxIncome(self) -> QuantConnect.Data.Fundamental.PretaxIncomeIncomeStatement:
        """Reported income before the deduction or benefit of income taxes."""
        ...

    @property
    def TaxProvision(self) -> QuantConnect.Data.Fundamental.TaxProvisionIncomeStatement:
        """Include any taxes on income, net of any investment tax credits for the current accounting period."""
        ...

    @property
    def CreditLossesProvision(self) -> QuantConnect.Data.Fundamental.CreditLossesProvisionIncomeStatement:
        """A charge to income which represents an expense deemed adequate by management given the composition of a bank's credit portfolios, their probability of default, the economic environment and the allowance for credit losses already established. Specific provisions are established to reduce the book value of specific assets (primarily loans) to establish the amount expected to be recovered on the loans."""
        ...

    @property
    def ResearchAndDevelopment(self) -> QuantConnect.Data.Fundamental.ResearchAndDevelopmentIncomeStatement:
        """The aggregate amount of research and development expenses during the year."""
        ...

    @property
    def SellingAndMarketingExpense(self) -> QuantConnect.Data.Fundamental.SellingAndMarketingExpenseIncomeStatement:
        """The aggregate total amount of expenses directly related to the marketing or selling of products or services."""
        ...

    @property
    def SellingGeneralAndAdministration(self) -> QuantConnect.Data.Fundamental.SellingGeneralAndAdministrationIncomeStatement:
        """The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Selling expenses are those directly related to the company's efforts to generate sales (e.g., sales salaries, commissions, advertising, delivery expenses). General and administrative expenses are expenses related to general administration of the company's operation (e.g., officers and office salaries, office supplies, telephone, accounting and legal services, and business licenses and fees)."""
        ...

    @property
    def SpecialIncomeCharges(self) -> QuantConnect.Data.Fundamental.SpecialIncomeChargesIncomeStatement:
        """Earnings or losses attributable to occurrences or actions by the firm that is either infrequent or unusual."""
        ...

    @property
    def TotalExpenses(self) -> QuantConnect.Data.Fundamental.TotalExpensesIncomeStatement:
        """The sum of operating expense and cost of revenue. If the company does not give the reported number, it will be calculated by adding operating expense and cost of revenue."""
        ...

    @property
    def InterestIncome(self) -> QuantConnect.Data.Fundamental.InterestIncomeIncomeStatement:
        """Income generated from interest-bearing deposits or accounts."""
        ...

    @property
    def EBIT(self) -> QuantConnect.Data.Fundamental.EBITIncomeStatement:
        """Earnings minus expenses (excluding interest and tax expenses)."""
        ...

    @property
    def EBITDA(self) -> QuantConnect.Data.Fundamental.EBITDAIncomeStatement:
        """Earnings minus expenses (excluding interest, tax, depreciation, and amortization expenses)."""
        ...

    @property
    def NetIncomeContinuousOperationsNetMinorityInterest(self) -> QuantConnect.Data.Fundamental.NetIncomeContinuousOperationsNetMinorityInterestIncomeStatement:
        """Revenue less expenses and taxes from the entity's ongoing operations net of minority interest and before income (loss) from: Preferred Dividends; Extraordinary Gains and Losses; Income from Cumulative Effects of Accounting Change; Discontinuing Operation; Income from Tax Loss Carry forward; Other Gains/Losses."""
        ...

    @property
    def CededPremiums(self) -> QuantConnect.Data.Fundamental.CededPremiumsIncomeStatement:
        """The amount of premiums paid and payable to another insurer as a result of reinsurance arrangements in order to exchange for that company accepting all or part of insurance on a risk or exposure. This item is usually only available for insurance industry."""
        ...

    @property
    def CommissionExpenses(self) -> QuantConnect.Data.Fundamental.CommissionExpensesIncomeStatement:
        """Morningstar DataId: 20202"""
        ...

    @property
    def CreditCard(self) -> QuantConnect.Data.Fundamental.CreditCardIncomeStatement:
        """Income earned from credit card services including late, over limit, and annual fees. This item is usually only available for bank industry."""
        ...

    @property
    def DividendIncome(self) -> QuantConnect.Data.Fundamental.DividendIncomeIncomeStatement:
        """Dividends earned from equity investment securities. This item is usually only available for bank industry."""
        ...

    @property
    def EarningsFromEquityInterest(self) -> QuantConnect.Data.Fundamental.EarningsFromEquityInterestIncomeStatement:
        """The earnings from equity interest can be a result of any of the following: Income from earnings distribution of the business, either as dividends paid to corporate shareholders or as drawings in a partnership; Capital gain realized upon sale of the business; Capital gain realized from selling his or her interest to other partners. This item is usually not available for bank and insurance industries."""
        ...

    @property
    def Equipment(self) -> QuantConnect.Data.Fundamental.EquipmentIncomeStatement:
        """Equipment expenses include depreciation, repairs, rentals, and service contract costs. This also includes equipment purchases which do not qualify for capitalization in accordance with the entity's accounting policy. This item may also include furniture expenses. This item is usually only available for bank industry."""
        ...

    @property
    def ExplorationDevelopmentAndMineralPropertyLeaseExpenses(self) -> QuantConnect.Data.Fundamental.ExplorationDevelopmentAndMineralPropertyLeaseExpensesIncomeStatement:
        """Costs incurred in identifying areas that may warrant examination and in examining specific areas that are considered to have prospects of containing energy or metal reserves, including costs of drilling exploratory wells. Development expense is the capitalized costs incurred to obtain access to proved reserves and to provide facilities for extracting, treating, gathering and storing the energy and metal. Mineral property includes oil and gas wells, mines, and other natural deposits (including geothermal deposits). The payment for leasing those properties is called mineral property lease expense. Exploration expense is included in operation expenses for mining industry."""
        ...

    @property
    def FeesAndCommissions(self) -> QuantConnect.Data.Fundamental.FeesAndCommissionsIncomeStatement:
        """Total fees and commissions earned from providing services such as leasing of space or maintaining: (1) depositor accounts; (2) transfer agent; (3) fiduciary and trust; (4) brokerage and underwriting; (5) mortgage; (6) credit cards; (7) correspondent clearing; and (8) other such services and activities performed for others. This item is usually available for bank and insurance industries."""
        ...

    @property
    def ForeignExchangeTradingGains(self) -> QuantConnect.Data.Fundamental.ForeignExchangeTradingGainsIncomeStatement:
        """Trading revenues that result from foreign exchange exposures such as cash instruments and off-balance sheet derivative instruments. This item is usually only available for bank industry."""
        ...

    @property
    def Fuel(self) -> QuantConnect.Data.Fundamental.FuelIncomeStatement:
        """The aggregate amount of fuel cost for current period associated with the revenue generation. This item is usually only available for transportation industry."""
        ...

    @property
    def FuelAndPurchasePower(self) -> QuantConnect.Data.Fundamental.FuelAndPurchasePowerIncomeStatement:
        """Cost of fuel, purchase power and gas associated with revenue generation. This item is usually only available for utility industry."""
        ...

    @property
    def GainOnSaleOfBusiness(self) -> QuantConnect.Data.Fundamental.GainOnSaleOfBusinessIncomeStatement:
        """The amount of excess earned in comparison to fair value when selling a business. This item is usually not available for insurance industry."""
        ...

    @property
    def GainOnSaleOfPPE(self) -> QuantConnect.Data.Fundamental.GainOnSaleOfPPEIncomeStatement:
        """The amount of excess earned in comparison to the net book value for sale of property, plant, equipment. This item is usually not available for bank and insurance industries."""
        ...

    @property
    def GainOnSaleOfSecurity(self) -> QuantConnect.Data.Fundamental.GainOnSaleOfSecurityIncomeStatement:
        """The amount of excess earned in comparison to the original purchase value of the security."""
        ...

    @property
    def GrossPremiumsWritten(self) -> QuantConnect.Data.Fundamental.GrossPremiumsWrittenIncomeStatement:
        """Total premiums generated from all policies written by an insurance company within a given period of time. This item is usually only available for insurance industry."""
        ...

    @property
    def ImpairmentOfCapitalAssets(self) -> QuantConnect.Data.Fundamental.ImpairmentOfCapitalAssetsIncomeStatement:
        """Impairments are considered to be permanent, which is a downward revaluation of fixed assets. If the sum of all estimated future cash flows is less than the carrying value of the asset, then the asset would be considered impaired and would have to be written down to its fair value. Once an asset is written down, it may only be written back up under very few circumstances. Usually the company uses the sum of undiscounted future cash flows to determine if the impairment should occur, and uses the sum of discounted future cash flows to make the impairment judgment. The impairment decision emphasizes on capital assets' future profit collection ability."""
        ...

    @property
    def IncreaseDecreaseInNetUnearnedPremiumReserves(self) -> QuantConnect.Data.Fundamental.IncreaseDecreaseInNetUnearnedPremiumReservesIncomeStatement:
        """Premium might contain a portion of the amount that has been paid in advance for insurance that has not yet been provided, which is called unearned premium. If either party cancels the contract, the insurer must have the unearned premium ready to refund. Hence, the amount of premium reserve maintained by insurers is called unearned premium reserves, which is prepared for liquidation. This item is usually only available for insurance industry."""
        ...

    @property
    def InsuranceAndClaims(self) -> QuantConnect.Data.Fundamental.InsuranceAndClaimsIncomeStatement:
        """Insurance and claims are the expenses in the period incurred with respect to protection provided by insurance entities against risks other than risks associated with production (which is allocated to cost of sales). This item is usually not available for insurance industries."""
        ...

    @property
    def InterestExpenseForDeposit(self) -> QuantConnect.Data.Fundamental.InterestExpenseForDepositIncomeStatement:
        """Includes interest expense on the following deposit accounts: Interest-bearing Demand deposit; Checking account; Savings account; Deposit in foreign offices; Money Market Certificates & Deposit Accounts. This item is usually only available for bank industry."""
        ...

    @property
    def InterestExpenseForFederalFundsSoldAndSecuritiesPurchaseUnderAgreementsToResell(self) -> QuantConnect.Data.Fundamental.InterestExpenseForFederalFundsSoldAndSecuritiesPurchaseUnderAgreementsToResellIncomeStatement:
        """Gross expenses on the purchase of Federal funds at a specified price with a simultaneous agreement to sell the same to the same counterparty at a fixed or determinable price at a future date. This item is usually only available for bank industry."""
        ...

    @property
    def InterestExpenseForLongTermDebtAndCapitalSecurities(self) -> QuantConnect.Data.Fundamental.InterestExpenseForLongTermDebtAndCapitalSecuritiesIncomeStatement:
        """The aggregate interest expenses incurred on long-term borrowings and any interest expenses on fixed assets (property, plant, equipment) that are leased due longer than one year. This item is usually only available for bank industry."""
        ...

    @property
    def InterestExpenseForShortTermDebt(self) -> QuantConnect.Data.Fundamental.InterestExpenseForShortTermDebtIncomeStatement:
        """The aggregate interest expenses incurred on short-term borrowings and any interest expenses on fixed assets (property, plant, equipment) that are leased within one year. This item is usually only available for bank industry."""
        ...

    @property
    def InterestIncomeFromDeposits(self) -> QuantConnect.Data.Fundamental.InterestIncomeFromDepositsIncomeStatement:
        """Interest income generated from all deposit accounts. This item is usually only available for bank industry."""
        ...

    @property
    def InterestIncomeFromFederalFundsSoldAndSecuritiesPurchaseUnderAgreementsToResell(self) -> QuantConnect.Data.Fundamental.InterestIncomeFromFederalFundsSoldAndSecuritiesPurchaseUnderAgreementsToResellIncomeStatement:
        """The carrying value of funds outstanding loaned in the form of security resale agreements if the agreement requires the purchaser to resell the identical security purchased or a security that meets the definition of ""substantially the same"" in the case of a dollar roll. Also includes purchases of participations in pools of securities that are subject to a resale agreement; This category includes all interest income generated from federal funds sold and securities purchases under agreements to resell; This category includes all interest income generated from federal funds sold and securities purchases under agreements to resell."""
        ...

    @property
    def InterestIncomeFromLeases(self) -> QuantConnect.Data.Fundamental.InterestIncomeFromLeasesIncomeStatement:
        """Includes interest and fee income generated by direct lease financing. This item is usually only available for bank industry."""
        ...

    @property
    def InterestIncomeFromLoans(self) -> QuantConnect.Data.Fundamental.InterestIncomeFromLoansIncomeStatement:
        """Loan is a common field to banks. Interest Income from Loans is interest and fee income generated from all loans, which includes Commercial loans; Credit loans; Other consumer loans; Real Estate - Construction; Real Estate - Mortgage; Foreign loans. Banks earn interest from loans. This item is usually only available for bank industry."""
        ...

    @property
    def InterestIncomeFromLoansAndLease(self) -> QuantConnect.Data.Fundamental.InterestIncomeFromLoansAndLeaseIncomeStatement:
        """Total interest and fee income generated by loans and lease. This item is usually only available for bank industry."""
        ...

    @property
    def InterestIncomeFromSecurities(self) -> QuantConnect.Data.Fundamental.InterestIncomeFromSecuritiesIncomeStatement:
        """Represents total interest and dividend income from U.S. Treasury securities, U.S. government agency and corporation obligations, securities issued by states and political subdivisions, other domestic debt securities, foreign debt securities, and equity securities (including investments in mutual funds). Excludes interest income from securities held in trading accounts. This item is usually only available for bank industry."""
        ...

    @property
    def InvestmentBankingProfit(self) -> QuantConnect.Data.Fundamental.InvestmentBankingProfitIncomeStatement:
        """Includes (1) underwriting revenue (the spread between the resale price received and the cost of the securities and related expenses) generated through the purchasing, distributing and reselling of new issues of securities (alternatively, could be a secondary offering of a large block of previously issued securities); and (2) fees earned for mergers, acquisitions, divestitures, restructurings, and other types of financial advisory services. This item is usually only available for bank industry."""
        ...

    @property
    def MaintenanceAndRepairs(self) -> QuantConnect.Data.Fundamental.MaintenanceAndRepairsIncomeStatement:
        """The aggregate amount of maintenance and repair expenses in the current period associated with the revenue generation. Mainly for fixed assets. This item is usually only available for transportation industry."""
        ...

    @property
    def NetForeignExchangeGainLoss(self) -> QuantConnect.Data.Fundamental.NetForeignExchangeGainLossIncomeStatement:
        """The aggregate foreign currency translation gain or loss (both realized and unrealized) included as part of revenue. This item is usually only available for insurance industry."""
        ...

    @property
    def NetOccupancyExpense(self) -> QuantConnect.Data.Fundamental.NetOccupancyExpenseIncomeStatement:
        """Occupancy expense may include items, such as depreciation of facilities and equipment, lease expenses, property taxes and property and casualty insurance expense. This item is usually only available for bank industry."""
        ...

    @property
    def NetPremiumsWritten(self) -> QuantConnect.Data.Fundamental.NetPremiumsWrittenIncomeStatement:
        """Net premiums written are gross premiums written less ceded premiums. This item is usually only available for insurance industry."""
        ...

    @property
    def NetRealizedGainLossOnInvestments(self) -> QuantConnect.Data.Fundamental.NetRealizedGainLossOnInvestmentsIncomeStatement:
        """Gain or loss realized during the period of time for all kinds of investment securities. In might include trading, available-for-sale, or held-to-maturity securities. This item is usually only available for insurance industry."""
        ...

    @property
    def OccupancyAndEquipment(self) -> QuantConnect.Data.Fundamental.OccupancyAndEquipmentIncomeStatement:
        """Includes total expenses of occupancy and equipment. This item is usually only available for bank industry."""
        ...

    @property
    def OperationAndMaintenance(self) -> QuantConnect.Data.Fundamental.OperationAndMaintenanceIncomeStatement:
        """The aggregate amount of operation and maintenance expenses, which is the one important operating expense for the utility industry. It includes any costs related to production and maintenance cost of the property during the revenue generation process. This item is usually only available for mining and utility industries."""
        ...

    @property
    def OtherCustomerServices(self) -> QuantConnect.Data.Fundamental.OtherCustomerServicesIncomeStatement:
        """Represents fees and commissions earned from provide other services. This item is usually only available for bank industry."""
        ...

    @property
    def OtherInterestExpense(self) -> QuantConnect.Data.Fundamental.OtherInterestExpenseIncomeStatement:
        """All other interest expense that is not otherwise classified"""
        ...

    @property
    def OtherInterestIncome(self) -> QuantConnect.Data.Fundamental.OtherInterestIncomeIncomeStatement:
        """All other interest income that is not otherwise classified"""
        ...

    @property
    def OtherNonInterestExpense(self) -> QuantConnect.Data.Fundamental.OtherNonInterestExpenseIncomeStatement:
        """All other non interest expense that is not otherwise classified"""
        ...

    @property
    def OtherSpecialCharges(self) -> QuantConnect.Data.Fundamental.OtherSpecialChargesIncomeStatement:
        """All other special charges that are not otherwise classified"""
        ...

    @property
    def OtherTaxes(self) -> QuantConnect.Data.Fundamental.OtherTaxesIncomeStatement:
        """Any taxes that are not part of income taxes. This item is usually not available for bank and insurance industries."""
        ...

    @property
    def PolicyholderBenefitsCeded(self) -> QuantConnect.Data.Fundamental.PolicyholderBenefitsCededIncomeStatement:
        """The provision in current period for future policy benefits, claims, and claims settlement, which is under reinsurance arrangements. This item is usually only available for insurance industry."""
        ...

    @property
    def PolicyholderBenefitsGross(self) -> QuantConnect.Data.Fundamental.PolicyholderBenefitsGrossIncomeStatement:
        """The gross amount of provision in current period for future policyholder benefits, claims, and claims settlement, incurred in the claims settlement process before the effects of reinsurance arrangements. This item is usually only available for insurance industry."""
        ...

    @property
    def PolicyholderDividends(self) -> QuantConnect.Data.Fundamental.PolicyholderDividendsIncomeStatement:
        """Payments made or credits extended to the insured by the company, usually at the end of a policy year results in reducing the net insurance cost to the policyholder. Such dividends may be paid in cash to the insured or applied by the insured as reductions of the premiums due for the next policy year. This item is usually only available for insurance industry."""
        ...

    @property
    def PolicyholderInterest(self) -> QuantConnect.Data.Fundamental.PolicyholderInterestIncomeStatement:
        """The periodic income payment provided to the annuitant by the insurance company, which is determined by the assumed interest rate (AIR) and other factors. This item is usually only available for insurance industry."""
        ...

    @property
    def ProfessionalExpenseAndContractServicesExpense(self) -> QuantConnect.Data.Fundamental.ProfessionalExpenseAndContractServicesExpenseIncomeStatement:
        """Professional and contract service expense includes cost reimbursements for support services related to contracted projects, outsourced management, technical and staff support. This item is usually only available for bank industry."""
        ...

    @property
    def ProvisionForDoubtfulAccounts(self) -> QuantConnect.Data.Fundamental.ProvisionForDoubtfulAccountsIncomeStatement:
        """Amount of the current period expense charged against operations, the offset which is generally to the allowance for doubtful accounts for the purpose of reducing receivables, including notes receivable, to an amount that approximates their net realizable value (the amount expected to be collected). The category includes provision for loan losses, provision for any doubtful account receivable, and bad debt expenses. This item is usually not available for bank and insurance industries."""
        ...

    @property
    def RentAndLandingFees(self) -> QuantConnect.Data.Fundamental.RentAndLandingFeesIncomeStatement:
        """Rent fees are the cost of occupying space during the accounting period. Landing fees are a change paid to an airport company for landing at a particular airport. This item is not available for insurance industry."""
        ...

    @property
    def RestructuringAndMergernAcquisition(self) -> QuantConnect.Data.Fundamental.RestructuringAndMergernAcquisitionIncomeStatement:
        """Expenses are related to restructuring, merger, or acquisitions. Restructuring expenses are charges associated with the consolidation and relocation of operations, disposition or abandonment of operations or productive assets. Merger and acquisition expenses are the amount of costs of a business combination including legal, accounting, and other costs that were charged to expense during the period."""
        ...

    @property
    def SalariesAndWages(self) -> QuantConnect.Data.Fundamental.SalariesAndWagesIncomeStatement:
        """All salary, wages, compensation, management fees, and employee benefit expenses."""
        ...

    @property
    def SecuritiesActivities(self) -> QuantConnect.Data.Fundamental.SecuritiesActivitiesIncomeStatement:
        """Income/Loss from Securities and Activities"""
        ...

    @property
    def ServiceChargeOnDepositorAccounts(self) -> QuantConnect.Data.Fundamental.ServiceChargeOnDepositorAccountsIncomeStatement:
        """Includes any service charges on following accounts: Demand Deposit; Checking account; Savings account; Deposit in foreign offices; ESCROW accounts; Money Market Certificates & Deposit accounts, CDs (Negotiable Certificates of Deposits); NOW Accounts (Negotiable Order of Withdrawal); IRAs (Individual Retirement Accounts). This item is usually only available for bank industry."""
        ...

    @property
    def TradingGainLoss(self) -> QuantConnect.Data.Fundamental.TradingGainLossIncomeStatement:
        """A broker-dealer or other financial entity may buy and sell securities exclusively for its own account, sometimes referred to as proprietary trading. The profit or loss is measured by the difference between the acquisition cost and the selling price or current market or fair value. The net gain or loss, includes both realized and unrealized, from trading cash instruments, equities and derivative contracts (including commodity contracts) that has been recognized during the accounting period for the broker dealer or other financial entity's own account. This item is typically available for bank industry."""
        ...

    @property
    def TrustFeesbyCommissions(self) -> QuantConnect.Data.Fundamental.TrustFeesbyCommissionsIncomeStatement:
        """Bank manages funds on behalf of its customers through the operation of various trust accounts. Any fees earned through managing those funds are called trust fees, which are recognized when earned. This item is typically available for bank industry."""
        ...

    @property
    def UnderwritingExpenses(self) -> QuantConnect.Data.Fundamental.UnderwritingExpensesIncomeStatement:
        """Also known as Policy Acquisition Costs; and reported by insurance companies. The cost incurred by an insurer when deciding whether to accept or decline a risk; may include meetings with the insureds or brokers, actuarial review of loss history, or physical inspections of exposures. Also, expenses deducted from insurance company revenues (including incurred losses and acquisition costs) to determine underwriting profit."""
        ...

    @property
    def WriteOff(self) -> QuantConnect.Data.Fundamental.WriteOffIncomeStatement:
        """A reduction in the value of an asset or earnings by the amount of an expense or loss."""
        ...

    @property
    def OtherNonInterestIncome(self) -> QuantConnect.Data.Fundamental.OtherNonInterestIncomeIncomeStatement:
        """Usually available for the banking industry. This is Non-Interest Income that is not otherwise classified."""
        ...

    @property
    def AmortizationOfIntangibles(self) -> QuantConnect.Data.Fundamental.AmortizationOfIntangiblesIncomeStatement:
        """The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets."""
        ...

    @property
    def NetIncomeFromContinuingAndDiscontinuedOperation(self) -> QuantConnect.Data.Fundamental.NetIncomeFromContinuingAndDiscontinuedOperationIncomeStatement:
        """Net Income from Continuing Operations and Discontinued Operations, added together."""
        ...

    @property
    def NetIncomeFromTaxLossCarryforward(self) -> QuantConnect.Data.Fundamental.NetIncomeFromTaxLossCarryforwardIncomeStatement:
        """Occurs if a company has had a net loss from operations on a previous year that can be carried forward to reduce net income for tax purposes."""
        ...

    @property
    def OtherOperatingExpenses(self) -> QuantConnect.Data.Fundamental.OtherOperatingExpensesIncomeStatement:
        """The aggregate amount of operating expenses associated with normal operations. Will not include any gain, loss, benefit, or income; and its value reported by the company should be <0."""
        ...

    @property
    def TotalMoneyMarketInvestments(self) -> QuantConnect.Data.Fundamental.TotalMoneyMarketInvestmentsIncomeStatement:
        """The sum of the money market investments held by a bank's depositors, which are FDIC insured."""
        ...

    @property
    def ReconciledCostOfRevenue(self) -> QuantConnect.Data.Fundamental.ReconciledCostOfRevenueIncomeStatement:
        """The Cost Of Revenue plus Depreciation, Depletion & Amortization from the IncomeStatement; minus Depreciation, Depletion & Amortization from the Cash Flow Statement"""
        ...

    @property
    def ReconciledDepreciation(self) -> QuantConnect.Data.Fundamental.ReconciledDepreciationIncomeStatement:
        """Is Depreciation, Depletion & Amortization from the Cash Flow Statement"""
        ...

    @property
    def NormalizedIncome(self) -> QuantConnect.Data.Fundamental.NormalizedIncomeIncomeStatement:
        """This calculation represents earnings adjusted for items that are irregular or unusual in nature, and/or are non-recurring. This can be used to fairly measure a company's profitability. This is calculated using Net Income from Continuing Operations plus/minus any tax affected unusual Items and Goodwill Impairments/Write Offs."""
        ...

    @property
    def NetIncomeFromContinuingOperationNetMinorityInterest(self) -> QuantConnect.Data.Fundamental.NetIncomeFromContinuingOperationNetMinorityInterestIncomeStatement:
        """Revenue less expenses and taxes from the entity's ongoing operations net of minority interest and before income (loss) from: Preferred Dividends; Extraordinary Gains and Losses; Income from Cumulative Effects of Accounting Change; Discontinuing Operation; Income from Tax Loss Carry forward; Other Gains/Losses."""
        ...

    @property
    def GainLossonSaleofAssets(self) -> QuantConnect.Data.Fundamental.GainLossonSaleofAssetsIncomeStatement:
        """Any gain (loss) recognized on the sale of assets or a sale which generates profit or loss, which is a difference between sales price and net book value at the disposal time."""
        ...

    @property
    def GainonSaleofLoans(self) -> QuantConnect.Data.Fundamental.GainonSaleofLoansIncomeStatement:
        """Gain on sale of any loans investment."""
        ...

    @property
    def GainonSaleofInvestmentProperty(self) -> QuantConnect.Data.Fundamental.GainonSaleofInvestmentPropertyIncomeStatement:
        """Gain on the disposal of investment property."""
        ...

    @property
    def LossonExtinguishmentofDebt(self) -> QuantConnect.Data.Fundamental.LossonExtinguishmentofDebtIncomeStatement:
        """Loss on extinguishment of debt is the accounting loss that results from a debt extinguishment. A debt shall be accounted for as having been extinguished in a number of circumstances, including when it has been settled through repayment or replacement by another liability. It generally results in an accounting gain or loss. Amount represents the difference between the fair value of the payments made and the carrying amount of the debt at the time of its extinguishment."""
        ...

    @property
    def EarningsfromEquityInterestNetOfTax(self) -> QuantConnect.Data.Fundamental.EarningsfromEquityInterestNetOfTaxIncomeStatement:
        """Income from other equity interest reported after Provision of Tax. This applies to all industries."""
        ...

    @property
    def NetIncomeIncludingNoncontrollingInterests(self) -> QuantConnect.Data.Fundamental.NetIncomeIncludingNoncontrollingInterestsIncomeStatement:
        """Net income of the group after the adjustment of all expenses and benefit."""
        ...

    @property
    def OtherunderPreferredStockDividend(self) -> QuantConnect.Data.Fundamental.OtherunderPreferredStockDividendIncomeStatement:
        """Dividend paid to the preferred shareholders before the common stock shareholders."""
        ...

    @property
    def StaffCosts(self) -> QuantConnect.Data.Fundamental.StaffCostsIncomeStatement:
        """Total staff cost which is paid to the employees that is not part of Selling, General, and Administration expense."""
        ...

    @property
    def SocialSecurityCosts(self) -> QuantConnect.Data.Fundamental.SocialSecurityCostsIncomeStatement:
        """Benefits paid to the employees in respect of their work."""
        ...

    @property
    def PensionCosts(self) -> QuantConnect.Data.Fundamental.PensionCostsIncomeStatement:
        """The expense that a company incurs each year by providing a pension plan for its employees. Major expenses in the pension cost include employer matching contributions and management fees."""
        ...

    @property
    def OtherOperatingIncomeTotal(self) -> QuantConnect.Data.Fundamental.OtherOperatingIncomeTotalIncomeStatement:
        """Total Other Operating Income- including interest income, dividend income and other types of operating income."""
        ...

    @property
    def IncomefromAssociatesandOtherParticipatingInterests(self) -> QuantConnect.Data.Fundamental.IncomefromAssociatesandOtherParticipatingInterestsIncomeStatement:
        """Total income from the associates and joint venture via investment, accounted for in the Non-Operating section."""
        ...

    @property
    def TotalOtherFinanceCost(self) -> QuantConnect.Data.Fundamental.TotalOtherFinanceCostIncomeStatement:
        """Any other finance cost which is not clearly defined in the Non-Operating section."""
        ...

    @property
    def GrossDividendPayment(self) -> QuantConnect.Data.Fundamental.GrossDividendPaymentIncomeStatement:
        """Total amount paid in dividends to investors- this includes dividends paid on equity and non-equity shares."""
        ...

    @property
    def FeesandCommissionIncome(self) -> QuantConnect.Data.Fundamental.FeesandCommissionIncomeIncomeStatement:
        """Fees and commission income earned by bank and insurance companies on the rendering services."""
        ...

    @property
    def FeesandCommissionExpense(self) -> QuantConnect.Data.Fundamental.FeesandCommissionExpenseIncomeStatement:
        """Cost incurred by bank and insurance companies for fees and commission income."""
        ...

    @property
    def NetTradingIncome(self) -> QuantConnect.Data.Fundamental.NetTradingIncomeIncomeStatement:
        """Any trading income on the securities."""
        ...

    @property
    def OtherStaffCosts(self) -> QuantConnect.Data.Fundamental.OtherStaffCostsIncomeStatement:
        """Other costs in incurred in lieu of the employees that cannot be identified by other specific items in the Staff Costs section."""
        ...

    @property
    def GainonInvestmentProperties(self) -> QuantConnect.Data.Fundamental.GainonInvestmentPropertiesIncomeStatement:
        """Gain on disposal and change in fair value of investment properties."""
        ...

    @property
    def AverageDilutionEarnings(self) -> QuantConnect.Data.Fundamental.AverageDilutionEarningsIncomeStatement:
        """Adjustments to reported net income to calculate Diluted EPS, by assuming that all convertible instruments are converted to Common Equity. The adjustments usually include the interest expense of debentures when assumed converted and preferred dividends of convertible preferred stock when assumed converted."""
        ...

    @property
    def GainLossonFinancialInstrumentsDesignatedasCashFlowHedges(self) -> QuantConnect.Data.Fundamental.GainLossonFinancialInstrumentsDesignatedasCashFlowHedgesIncomeStatement:
        """Gain/Loss through hedging activities."""
        ...

    @property
    def GainLossonDerecognitionofAvailableForSaleFinancialAssets(self) -> QuantConnect.Data.Fundamental.GainLossonDerecognitionofAvailableForSaleFinancialAssetsIncomeStatement:
        """Gain/loss on the write-off of financial assets available-for-sale."""
        ...

    @property
    def NegativeGoodwillImmediatelyRecognized(self) -> QuantConnect.Data.Fundamental.NegativeGoodwillImmediatelyRecognizedIncomeStatement:
        """Negative Goodwill recognized in the Income Statement. Negative Goodwill arises where the net assets at the date of acquisition, fairly valued, falls below the cost of acquisition."""
        ...

    @property
    def GainsLossesonFinancialInstrumentsDuetoFairValueAdjustmentsinHedgeAccountingTotal(self) -> QuantConnect.Data.Fundamental.GainsLossesonFinancialInstrumentsDuetoFairValueAdjustmentsinHedgeAccountingTotalIncomeStatement:
        """Gain or loss on derivatives investment due to the fair value adjustment."""
        ...

    @property
    def ImpairmentLossesReversalsFinancialInstrumentsNet(self) -> QuantConnect.Data.Fundamental.ImpairmentLossesReversalsFinancialInstrumentsNetIncomeStatement:
        """Impairment or reversal of impairment on financial instrument such as derivative. This is a contra account under Total Revenue in banks."""
        ...

    @property
    def ClaimsandPaidIncurred(self) -> QuantConnect.Data.Fundamental.ClaimsandPaidIncurredIncomeStatement:
        """All reported claims arising out of incidents in that year are considered incurred grouped with claims paid out."""
        ...

    @property
    def ReinsuranceRecoveriesClaimsandBenefits(self) -> QuantConnect.Data.Fundamental.ReinsuranceRecoveriesClaimsandBenefitsIncomeStatement:
        """Claim on the reinsurance company and take the benefits."""
        ...

    @property
    def ChangeinInsuranceLiabilitiesNetofReinsurance(self) -> QuantConnect.Data.Fundamental.ChangeinInsuranceLiabilitiesNetofReinsuranceIncomeStatement:
        """Income/Expense due to changes between periods in insurance liabilities."""
        ...

    @property
    def ChangeinInvestmentContract(self) -> QuantConnect.Data.Fundamental.ChangeinInvestmentContractIncomeStatement:
        """Income/Expense due to changes between periods in Investment Contracts."""
        ...

    @property
    def CreditRiskProvisions(self) -> QuantConnect.Data.Fundamental.CreditRiskProvisionsIncomeStatement:
        """Provision for the risk of loss of principal or loss of a financial reward stemming from a borrower's failure to repay a loan or otherwise meet a contractual obligation. Credit risk arises whenever a borrower is expecting to use future cash flows to pay a current debt. Investors are compensated for assuming credit risk by way of interest payments from the borrower or issuer of a debt obligation. This is a contra account under Total Revenue in banks."""
        ...

    @property
    def WagesandSalaries(self) -> QuantConnect.Data.Fundamental.WagesandSalariesIncomeStatement:
        """This is the portion under Staff Costs that represents salary paid to the employees in respect of their work."""
        ...

    @property
    def OtherNonOperatingIncomeExpenses(self) -> QuantConnect.Data.Fundamental.OtherNonOperatingIncomeExpensesIncomeStatement:
        """Total other income and expense of the company that cannot be identified by other specific items in the Non-Operating section."""
        ...

    @property
    def OtherNonOperatingIncome(self) -> QuantConnect.Data.Fundamental.OtherNonOperatingIncomeIncomeStatement:
        """Other income of the company that cannot be identified by other specific items in the Non-Operating section."""
        ...

    @property
    def OtherNonOperatingExpenses(self) -> QuantConnect.Data.Fundamental.OtherNonOperatingExpensesIncomeStatement:
        """Other expenses of the company that cannot be identified by other specific items in the Non-Operating section."""
        ...

    @property
    def TotalUnusualItems(self) -> QuantConnect.Data.Fundamental.TotalUnusualItemsIncomeStatement:
        """Total unusual items including Negative Goodwill."""
        ...

    @property
    def TotalUnusualItemsExcludingGoodwill(self) -> QuantConnect.Data.Fundamental.TotalUnusualItemsExcludingGoodwillIncomeStatement:
        """The sum of all the identifiable operating and non-operating unusual items."""
        ...

    @property
    def TaxRateForCalcs(self) -> QuantConnect.Data.Fundamental.TaxRateForCalcsIncomeStatement:
        """Tax rate used for Morningstar calculations."""
        ...

    @property
    def TaxEffectOfUnusualItems(self) -> QuantConnect.Data.Fundamental.TaxEffectOfUnusualItemsIncomeStatement:
        """Tax effect of the usual items"""
        ...

    @property
    def NormalizedEBITDA(self) -> QuantConnect.Data.Fundamental.NormalizedEBITDAIncomeStatement:
        """EBITDA less Total Unusual Items"""
        ...

    @property
    def StockBasedCompensation(self) -> QuantConnect.Data.Fundamental.StockBasedCompensationIncomeStatement:
        """The cost to the company for granting stock options to reward employees."""
        ...

    @property
    def DilutedNIAvailtoComStockholders(self) -> QuantConnect.Data.Fundamental.DilutedNIAvailtoComStockholdersIncomeStatement:
        """Net income to calculate Diluted EPS, accounting for adjustments assuming that all the convertible instruments are being converted to Common Equity."""
        ...

    @property
    def InvestmentContractLiabilitiesIncurred(self) -> QuantConnect.Data.Fundamental.InvestmentContractLiabilitiesIncurredIncomeStatement:
        """Income/Expenses due to the insurer's liabilities incurred in Investment Contracts."""
        ...

    @property
    def ReinsuranceRecoveriesofInvestmentContract(self) -> QuantConnect.Data.Fundamental.ReinsuranceRecoveriesofInvestmentContractIncomeStatement:
        """Income/Expense due to recoveries from reinsurers for Investment Contracts."""
        ...

    @property
    def TotalDividendPaymentofEquityShares(self) -> QuantConnect.Data.Fundamental.TotalDividendPaymentofEquitySharesIncomeStatement:
        """Total amount paid in dividends to equity securities investors."""
        ...

    @property
    def TotalDividendPaymentofNonEquityShares(self) -> QuantConnect.Data.Fundamental.TotalDividendPaymentofNonEquitySharesIncomeStatement:
        """Total amount paid in dividends to Non-Equity securities investors."""
        ...

    @property
    def ChangeinTheGrossProvisionforUnearnedPremiums(self) -> QuantConnect.Data.Fundamental.ChangeinTheGrossProvisionforUnearnedPremiumsIncomeStatement:
        """The change in the amount of the unearned premium reserves maintained by insurers."""
        ...

    @property
    def ChangeinTheGrossProvisionforUnearnedPremiumsReinsurersShare(self) -> QuantConnect.Data.Fundamental.ChangeinTheGrossProvisionforUnearnedPremiumsReinsurersShareIncomeStatement:
        """The change in the amount of unearned premium reserve to be covered by reinsurers."""
        ...

    @property
    def ClaimsandChangeinInsuranceLiabilities(self) -> QuantConnect.Data.Fundamental.ClaimsandChangeinInsuranceLiabilitiesIncomeStatement:
        """Income/Expense due to the insurer's changes in insurance liabilities."""
        ...

    @property
    def ReinsuranceRecoveriesofInsuranceLiabilities(self) -> QuantConnect.Data.Fundamental.ReinsuranceRecoveriesofInsuranceLiabilitiesIncomeStatement:
        """Income/Expense due to recoveries from reinsurers for insurance liabilities."""
        ...

    @property
    def TotalOperatingIncomeAsReported(self) -> QuantConnect.Data.Fundamental.TotalOperatingIncomeAsReportedIncomeStatement:
        """Operating profit/loss as reported by the company, may be the same or not the same as Morningstar's standardized definition."""
        ...

    @property
    def OtherGA(self) -> QuantConnect.Data.Fundamental.OtherGAIncomeStatement:
        """Other General and Administrative Expenses not categorized that the company incurs that are not directly tied to a specific function such as manufacturing, production, or sales."""
        ...

    @property
    def OtherCostofRevenue(self) -> QuantConnect.Data.Fundamental.OtherCostofRevenueIncomeStatement:
        """Other costs associated with the revenue-generating activities of the company not categorized above."""
        ...

    @property
    def RentandLandingFeesCostofRevenue(self) -> QuantConnect.Data.Fundamental.RentandLandingFeesCostofRevenueIncomeStatement:
        """Costs paid to use the facilities necessary to generate revenue during the accounting period."""
        ...

    @property
    def DDACostofRevenue(self) -> QuantConnect.Data.Fundamental.DDACostofRevenueIncomeStatement:
        """Costs of depreciation and amortization on assets used for the revenue-generating activities during the accounting period"""
        ...

    @property
    def RentExpenseSupplemental(self) -> QuantConnect.Data.Fundamental.RentExpenseSupplementalIncomeStatement:
        """The sum of all rent expenses incurred by the company for operating leases during the year, it is a supplemental value which would be reported outside consolidated statements or consolidated statement's footnotes."""
        ...

    @property
    def NormalizedPreTaxIncome(self) -> QuantConnect.Data.Fundamental.NormalizedPreTaxIncomeIncomeStatement:
        """This calculation represents pre-tax earnings adjusted for items that are irregular or unusual in nature, and/or are non-recurring. This can be used to fairly measure a company's profitability. This is calculated using Pre-Tax Income plus/minus any unusual Items and Goodwill Impairments/Write Offs."""
        ...

    @property
    def ResearchAndDevelopmentExpensesSupplemental(self) -> QuantConnect.Data.Fundamental.ResearchAndDevelopmentExpensesSupplementalIncomeStatement:
        """The aggregate amount of research and development expenses during the year. It is a supplemental value which would be reported outside consolidated statements."""
        ...

    @property
    def DepreciationSupplemental(self) -> QuantConnect.Data.Fundamental.DepreciationSupplementalIncomeStatement:
        """The current period expense charged against earnings on tangible asset over its useful life. It is a supplemental value which would be reported outside consolidated statements."""
        ...

    @property
    def AmortizationSupplemental(self) -> QuantConnect.Data.Fundamental.AmortizationSupplementalIncomeStatement:
        """The current period expense charged against earnings on intangible asset over its useful life. It is a supplemental value which would be reported outside consolidated statements."""
        ...

    @property
    def TotalRevenueAsReported(self) -> QuantConnect.Data.Fundamental.TotalRevenueAsReportedIncomeStatement:
        """Total revenue as reported by the company, may be the same or not the same as Morningstar's standardized definition."""
        ...

    @property
    def OperatingExpenseAsReported(self) -> QuantConnect.Data.Fundamental.OperatingExpenseAsReportedIncomeStatement:
        """Operating expense as reported by the company, may be the same or not the same as Morningstar's standardized definition."""
        ...

    @property
    def NormalizedIncomeAsReported(self) -> QuantConnect.Data.Fundamental.NormalizedIncomeAsReportedIncomeStatement:
        """Earnings adjusted for items that are irregular or unusual in nature, and/or are non-recurring. This can be used to fairly measure a company's profitability. This is as reported by the company, may be the same or not the same as Morningstar's standardized definition."""
        ...

    @property
    def NormalizedEBITDAAsReported(self) -> QuantConnect.Data.Fundamental.NormalizedEBITDAAsReportedIncomeStatement:
        """EBITDA less Total Unusual Items. This is as reported by the company, may be the same or not the same as Morningstar's standardized definition."""
        ...

    @property
    def NormalizedEBITAsReported(self) -> QuantConnect.Data.Fundamental.NormalizedEBITAsReportedIncomeStatement:
        """EBIT less Total Unusual Items. This is as reported by the company, may be the same or not the same as Morningstar's standardized definition."""
        ...

    @property
    def NormalizedOperatingProfitAsReported(self) -> QuantConnect.Data.Fundamental.NormalizedOperatingProfitAsReportedIncomeStatement:
        """Operating profit adjusted for items that are irregular or unusual in nature, and/or are non-recurring. This can be used to fairly measure a company's profitability. This is as reported by the company, may be the same or not the same as Morningstar's standardized definition."""
        ...

    @property
    def EffectiveTaxRateAsReported(self) -> QuantConnect.Data.Fundamental.EffectiveTaxRateAsReportedIncomeStatement:
        """The average tax rate for the period as reported by the company, may be the same or not the same as Morningstar's standardized definition."""
        ...

    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...


class BalanceSheetFileDate(QuantConnect.Data.Fundamental.MultiPeriodField[datetime.datetime]):
    """Filing date of the Balance Sheet"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> datetime.datetime:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> datetime.datetime:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> datetime.datetime:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> datetime.datetime:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> datetime.datetime:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, datetime.datetime]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AccountsPayableBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Any money that a company owes its suppliers for goods and services purchased on credit and is expected to pay within the next year or operating cycle."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AccountsReceivableBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Accounts owed to a company by customers within a year as a result of exchanging goods or services on credit."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CurrentAccruedExpensesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """An expense recognized before it is paid for. Includes compensation, interest, pensions and all other miscellaneous accruals reported by the company. Expenses incurred during the accounting period, but not required to be paid until a later date."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NonCurrentAccruedExpensesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """An expense that has occurred but the transaction has not been entered in the accounting records. Accordingly, an adjusting entry is made to debit the appropriate expense account and to credit a liability account such as accrued expenses payable or accounts payable."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AccruedInvestmentIncomeBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Interest, dividends, rents, ancillary and other revenues earned but not yet received by the entity on its investments."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AccumulatedDepreciationBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The cumulative amount of wear and tear or obsolescence charged against the fixed assets of a company."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class GainsLossesNotAffectingRetainedEarningsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The aggregate amount of gains or losses that are not part of retained earnings. It is also called other comprehensive income."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AdditionalPaidInCapitalBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders. Includes adjustments to additional paid in capital. There are two major categories of additional paid in capital: 1) Paid in capital in excess of par/stated value, which is the difference between the actual issue price of the shares and the shares' par/stated value. 2) Paid in capital from other transactions which includes treasury stock, retirement of stock, stock dividends recorded at market, lapse of stock purchase warrants, conversion of convertible bonds in excess of the par value of the stock, and any other additional capital from the company's own stock transactions."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AllowanceForLoansAndLeaseLossesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A contra account sets aside as an allowance for bad loans (e.g. customer defaults)."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AvailableForSaleSecuritiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """For an unclassified balance sheet, this item represents equity securities categorized neither as held-to-maturity nor trading. Equity securities represent ownership interests or the right to acquire ownership interests in corporations and other legal entities which ownership interest is represented by shares of common or preferred stock (which is not mandatory redeemable or redeemable at the option of the holder), convertible securities, stock rights, or stock warrants. This category includes preferred stocks, available- for-sale and common stock, available-for-sale."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CapitalStockBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The total amount of stock authorized for issue by a corporation, including common and preferred stock."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash includes currency on hand as well as demand deposits with banks or financial institutions. It also includes other kinds of accounts that have the general characteristics of demand deposits in that the customer may deposit additional funds at any time and also effectively may withdraw funds at any time without prior notice or penalty."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashEquivalentsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash equivalents, excluding items classified as marketable securities, include short-term, highly liquid investments that are both readily convertible to known amounts of cash, and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Generally, only investments with original maturities of three months or less qualify under this definition. Original maturity means original maturity to the entity holding the investment. For example, both a three-month US Treasury bill and a three-year Treasury note purchased three months from maturity qualify as cash equivalents. However, a Treasury note purchased three years ago does not become a cash equivalent when its remaining maturity is three months."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashAndCashEquivalentsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Includes unrestricted cash on hand, money market instruments and other debt securities which can be converted to cash immediately."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashAndDueFromBanksBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Includes cash on hand (currency and coin), cash items in process of collection, non-interest bearing deposits due from other financial institutions (including corporate credit unions), and balances with the Federal Reserve Banks, Federal Home Loan Banks and central banks."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashCashEquivalentsAndFederalFundsSoldBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The aggregate amount of cash, cash equivalents, and federal funds sold."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashCashEquivalentsAndMarketableSecuritiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The aggregate amount of cash, cash equivalents, and marketable securities."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CommonStockBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Common stock (all issues) at par value, as reported within the Stockholder's Equity section of the balance sheet; i.e. it is one component of Common Stockholder's Equity"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CurrentAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The total amount of assets considered to be convertible into cash within a relatively short period of time, usually a year."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CurrentDebtBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Represents the total amount of long-term debt such as bank loans and commercial paper, which is due within one year."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CurrentDebtAndCapitalLeaseObligationBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """All borrowings due within one year including current portions of long-term debt and capital leases as well as short-term debt such as bank loans and commercial paper."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CurrentLiabilitiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The debts or obligations of the firm that are due within one year."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CurrentCapitalLeaseObligationBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Represents the total amount of long-term capital leases that must be paid within the next accounting PeriodAsByte. Capital lease obligations are contractual obligations that arise from obtaining the use of property or equipment via a capital lease contract."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DeferredAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """An amount owed to a firm that is not expected to be received by the firm within one year from the date of the balance sheet."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DeferredCostsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """An expenditure not recognized as a cost of operation of the period in which incurred, but carried forward to be written off in future periods."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NonCurrentDeferredLiabilitiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Represents the non-current portion of obligations, which is a liability that usually would have been paid but is now past due."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CurrentDeferredLiabilitiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Represents the current portion of obligations, which is a liability that usually would have been paid but is now past due."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DeferredPolicyAcquisitionCostsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Net amount of deferred policy acquisition costs capitalized on contracts remaining in force as of the balance sheet date."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CurrentDeferredRevenueBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Represents collections of cash or other assets related to revenue producing activity for which revenue has not yet been recognized. Generally, an entity records deferred revenue when it receives consideration from a customer before achieving certain criteria that must be met for revenue to be recognized in conformity with GAAP. It can be either current or non-current item. Also called unearned revenue."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NonCurrentDeferredRevenueBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The non-current portion of deferred revenue amount as of the balance sheet date. Deferred revenue is a liability related to revenue producing activity for which revenue has not yet been recognized, and is not expected be recognized in the next twelve months."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DeferredTaxAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """An asset on a company's balance sheet that may be used to reduce any subsequent period's income tax expense. Deferred tax assets can arise due to net loss carryovers, which are only recorded as assets if it is deemed more likely than not that the asset will be used in future fiscal periods."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CurrentDeferredTaxesAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Meaning a future tax asset, resulting from temporary differences between book (accounting) value of assets and liabilities and their tax value, or timing differences between the recognition of gains and losses in financial statements and their recognition in a tax computation. It is also called future tax."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CurrentDeferredTaxesLiabilitiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Meaning a future tax liability, resulting from temporary differences between book (accounting) value of assets and liabilities and their tax value, or timing differences between the recognition of gains and losses in financial statements and their recognition in a tax computation. Deferred tax liabilities generally arise where tax relief is provided in advance of an accounting expense, or income is accrued but not taxed until received."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NonCurrentDeferredTaxesAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A result of timing differences between taxable incomes reported on the income statement and taxable income from the company's tax return. Depending on the positioning of deferred income taxes, the field may be either current (within current assets) or non- current (below total current assets). Typically a company will have two deferred income taxes fields."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NonCurrentDeferredTaxesLiabilitiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The estimated future tax obligations, which usually arise when different accounting methods are used for financial statements and tax statement It is also an add-back to the cash flow statement. Deferred income taxes include accumulated tax deferrals due to accelerated depreciation and investment credit."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class EquityInvestmentsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This asset represents equity securities categorized neither as held-to-maturity nor trading."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FederalFundsPurchasedAndSecuritiesSoldUnderAgreementToRepurchaseBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This liability refers to the amount shown on the books that a bank with insufficient reserves borrows, at the federal funds rate, from another bank to meet its reserve requirements; and the amount of securities that an institution sells and agrees to repurchase at a specified date for a specified price, net of any reductions or offsets."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FederalFundsSoldAndSecuritiesPurchaseUnderAgreementsToResellBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This asset refers to very-short-term loans of funds to other banks and securities dealers."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FixedMaturityInvestmentsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This asset refers to types of investments that may be contained within the fixed maturity category which securities are having a stated final repayment date. Examples of items within this category may include bonds, including convertibles and bonds with warrants, and redeemable preferred stocks."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FuturePolicyBenefitsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Accounting policy pertaining to an insurance entity's net liability for future benefits (for example, death, cash surrender value) to be paid to or on behalf of policyholders, describing the bases, methodologies and components of the reserve, and assumptions regarding estimates of expected investment yields, mortality, morbidity, terminations and expenses."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class GeneralPartnershipCapitalBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """In a limited partnership or master limited partnership form of business, this represents the balance of capital held by the general partners."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class GoodwillBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The excess of the cost of an acquired company over the sum of the fair market value of its identifiable individual assets less the liabilities."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class GoodwillAndOtherIntangibleAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Rights or economic benefits, such as patents and goodwill, that is not physical in nature. They are those that are neither physical nor financial in nature, nevertheless, have value to the company. Intangibles are listed net of accumulated amortization."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class GrossLoanBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Represents the sum of all loans (commercial, consumer, mortgage, etc.) as well as leases before any provisions for loan losses or unearned discounts."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class GrossPPEBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Carrying amount at the balance sheet date for long-lived physical assets used in the normal conduct of business and not intended for resale. This can include land, physical structures, machinery, vehicles, furniture, computer equipment, construction in progress, and similar items. Amount does not include depreciation."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class HeldToMaturitySecuritiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Debt securities that a firm has the ability and intent to hold until maturity."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class IncomeTaxPayableBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A current liability account which reflects the amount of income taxes currently due to the federal, state, and local governments."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InterestBearingDepositsLiabilitiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The aggregate of all domestic and foreign deposits in the bank that earns interests."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InterestPayableBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Sum of the carrying values as of the balance sheet date of interest payable on all forms of debt, including trade payable that has been incurred."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InterestBearingDepositsAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Deposit of money with a financial institution, in consideration of which the financial institution pays or credits interest, or amounts in the nature of interest."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InventoryBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A company's merchandise, raw materials, and finished and unfinished products which have not yet been sold."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InvestmentsAndAdvancesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """All investments in affiliates, real estate, securities, etc. Non-current investment, not including marketable securities."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class LimitedPartnershipCapitalBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """In a limited partnership or master limited partnership form of business, this represents the balance of capital held by the limited partners."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class LongTermDebtBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Sum of the carrying values as of the balance sheet date of all long-term debt, which is debt initially having maturities due after one year or beyond the operating cycle, if longer, but excluding the portions thereof scheduled to be repaid within one year or the normal operating cycle, if longer. Long-term debt includes notes payable, bonds payable, mortgage loans, convertible debt, subordinated debt and other types of long term debt."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class LongTermDebtAndCapitalLeaseObligationBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """All borrowings lasting over one year including long-term debt and long-term portion of capital lease obligations."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class LongTermInvestmentsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Often referred to simply as "investments". Long-term investments are to be held for many years and are not intended to be disposed in the near future. This group usually consists of four types of investments."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class LongTermCapitalLeaseObligationBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Represents the total liability for long-term leases lasting over one year. Amount equal to the present value (the principal) at the beginning of the lease term less lease payments during the lease term."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class MinorityInterestBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Carrying amount of the equity interests owned by non-controlling shareholders, partners, or other equity holders in one or more of the entities included in the reporting entity's consolidated financial statements."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class MoneyMarketInvestmentsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Short-term (typical maturity is less than one year), highly liquid government or corporate debt instrument such as bankers' acceptance, promissory notes, and treasury bills."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetLoanBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Represents the value of all loans after deduction of the appropriate allowances for loan and lease losses."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetPPEBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Tangible assets that are held by an entity for use in the production or supply of goods and services, for rental to others, or for administrative purposes and that are expected to provide economic benefit for more than one year; net of accumulated depreciation."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NonInterestBearingDepositsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The aggregate amount of all domestic and foreign deposits in the banks that do not draw interest."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CurrentNotesPayableBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Written promises to pay a stated sum at one or more specified dates in the future, within the accounting PeriodAsByte."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NotesReceivableBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """An amount representing an agreement for an unconditional promise by the maker to pay the entity (holder) a definite sum of money at a future date(s) within one year of the balance sheet date or the normal operating cycle, whichever is longer. Such amount may include accrued interest receivable in accordance with the terms of the note. The note also may contain provisions including a discount or premium, payable on demand, secured, or unsecured, interest bearing or non-interest bearing, among a myriad of other features and characteristics."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NonCurrentNoteReceivablesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """An amount representing an agreement for an unconditional promise by the maker to pay the entity (holder) a definite sum of money at a future date(s), excluding the portion that is expected to be received within one year of the balance sheet date or the normal operating cycle, whichever is longer."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherCurrentLiabilitiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Other current liabilities = Total current liabilities - Payables and accrued Expenses - Current debt and capital lease obligation - provisions, current - deferred liabilities, current."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherIntangibleAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Sum of the carrying amounts of all intangible assets, excluding goodwill."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherShortTermInvestmentsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The aggregate amount of short term investments, which will be expired within one year that are not specifically classified as Available-for-Sale, Held-to-Maturity, nor Trading investments."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PayablesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The sum of all payables owed and expected to be paid within one year or one operating cycle, including accounts payables, taxes payable, dividends payable and all other current payables."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PayablesAndAccruedExpensesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This balance sheet account includes all current payables and accrued expenses."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PolicyReservesBenefitsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Accounting policy pertaining to an insurance entity's net liability for future benefits (for example, death, cash surrender value) to be paid to or on behalf of policyholders, describing the bases, methodologies and components of the reserve, and assumptions regarding estimates of expected investment yields, mortality, morbidity, terminations and expenses."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PolicyholderFundsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The total liability as of the balance sheet date of amounts due to policy holders, excluding future policy benefits and claims, including unpaid policy dividends, retrospective refunds, and undistributed earnings on participating business."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PreferredSecuritiesOutsideStockEquityBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Preferred securities that that firm treats as a liability. It includes convertible preferred stock or redeemable preferred stock."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PreferredStockBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Preferred stock (all issues) at par value, as reported within the Stockholder's Equity section of the balance sheet."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PrepaidAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Sum of the carrying amounts that are paid in advance for expenses, which will be charged against earnings in subsequent periods."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NonCurrentPrepaidAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Sum of the carrying amounts that are paid in advance for expenses, which will be charged against earnings in periods after one year or beyond the operating cycle, if longer."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ReceivablesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The sum of all receivables owed by customers and affiliates within one year, including accounts receivable, notes receivable, premiums receivable, and other current receivables."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ReinsuranceRecoverableBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The amount of benefits the ceding insurer expects to recover on insurance policies ceded to other insurance entities as of the balance sheet date for all guaranteed benefit types. It includes estimated amounts for claims incurred but not reported, and policy benefits, net of any related valuation allowance."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class RetainedEarningsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The cumulative net income of the company from the date of its inception (or reorganization) to the date of the financial statement less the cumulative distributions to shareholders either directly (dividends) or indirectly (treasury stock)."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class SecuritiesLendingCollateralBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The carrying value as of the balance sheet date of the liabilities collateral securities loaned to other broker-dealers. Borrowers of securities generally are required to provide collateral to the lenders of securities, commonly cash but sometimes other securities or standby letters of credit, with a value slightly higher than that of the securities borrowed."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class SecurityAgreeToBeResellBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The carrying value of funds outstanding loaned in the form of security resale agreements if the agreement requires the purchaser to resell the identical security purchased or a security that meets the definition of "substantially the same" in the case of a dollar roll. Also includes purchases of participations in pools of securities that are subject to a resale agreement."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class SecuritySoldNotYetRepurchasedBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Represent obligations of the company to deliver the specified security at the contracted price and, thereby, create a liability to purchase the security in the market at prevailing prices."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class SeparateAccountAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The fair value of the assets held by the company for the benefit of separate account policyholders."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class SeparateAccountBusinessBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Refers to revenue that is generated that is not part of typical operations."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ShortTermInvestmentsAvailableForSaleBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The current assets section of a company's balance sheet that contains the investments that a company holds with the purpose for trading."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ShortTermInvestmentsHeldToMaturityBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The current assets section of a company's balance sheet that contains the investments that a company has made that will expire at a fixed date within one year."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ShortTermInvestmentsTradingBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The current assets section of a company's balance sheet that contains the investments that a company can trade at any moment."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class StockholdersEquityBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The residual interest in the assets of the enterprise that remains after deducting its liabilities. Equity is increased by owners' investments and by comprehensive income, and it is reduced by distributions to the owners."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalTaxPayableBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A liability that reflects the taxes owed to federal, state, and local tax authorities. It is the carrying value as of the balance sheet date of obligations incurred and payable for statutory income, sales, use, payroll, excise, real, property and other taxes."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The aggregate amount of probable future economic benefits obtained or controlled by a particular enterprise as a result of past transactions or events."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalDepositsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A liability account which represents the total amount of funds deposited."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalInvestmentsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Asset that refers to the sum of all available for sale securities and other investments often reported on the balance sheet of insurance firms."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalNonCurrentAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold or consumed after one year or beyond the normal operating cycle, if longer."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalPartnershipCapitalBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Ownership interest of different classes of partners in the publicly listed limited partnership or master limited partnership. Partners include general, limited and preferred partners."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TradingAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Trading account assets are bought and held principally for the purpose of selling them in the near term (thus held for only a short period of time). Unrealized holding gains and losses for trading securities are included in earnings."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TradingLiabilitiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The carrying amount of liabilities as of the balance sheet date that pertain to principal and customer trading transactions, or which may be incurred with the objective of generating a profit from short-term fluctuations in price as part of an entity's market-making, hedging and proprietary trading. Examples include short positions in securities, derivatives and commodities, obligations under repurchase agreements, and securities borrowed arrangements."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TradingSecuritiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The total of financial instruments that are bought and held principally for the purpose of selling them in the near term (thus held for only a short period of time) or for debt and equity securities formerly categorized as available-for-sale or held-to-maturity which the company held as of the date it opted to account for such securities at fair value."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TreasuryStockBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The portion of shares that a company keeps in their own treasury. Treasury stock may have come from a repurchase or buyback from shareholders; or it may have never been issued to the public in the first place. These shares don't pay dividends, have no voting rights, and are not included in shares outstanding calculations."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class UnearnedIncomeBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Income received but not yet earned, it represents the unearned amount that is netted against the total loan."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class UnearnedPremiumsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Carrying amount of premiums written on insurance contracts that have not been earned as of the balance sheet date."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class UnpaidLossAndLossReserveBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Liability amount that reflects claims that are expected based upon statistical projections, but which have not been reported to the insurer."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InvestedCapitalBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Invested capital = common shareholders' equity + long term debt + current debt"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CurrentDeferredAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Payments that will be assigned as expenses with one accounting period, but that are paid in advance and temporarily set up as current assets on the balance sheet."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NonCurrentDeferredAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Payments that will be assigned as expenses longer than one accounting period, but that are paid in advance and temporarily set up as non-current assets on the balance sheet."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class SecuritiesAndInvestmentsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Asset, often applicable to Banks, which refers to the aggregate amount of all securities and investments."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalLiabilitiesNetMinorityInterestBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Probable future sacrifices of economic benefits arising from present obligations of an enterprise to transfer assets or provide services to others in the future as a result of past transactions or events, excluding minority interest."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalNonCurrentLiabilitiesNetMinorityInterestBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Total obligations, net minority interest, incurred as part of normal operations that is expected to be repaid beyond the following twelve months or one business cycle; excludes minority interest."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalEquityGrossMinorityInterestBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Residual interest, including minority interest, that remains in the assets of the enterprise after deducting its liabilities. Equity is increased by owners' investments and by comprehensive income, and it is reduced by distributions to the owners."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class GrossAccountsReceivableBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Accounts owed to a company by customers within a year as a result of exchanging goods or services on credit."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NonCurrentAccountsReceivableBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Accounts receivable represents sums owed to the business that the business records as revenue. Gross accounts receivable is accounts receivable before the business deducts uncollectable accounts to calculate the true value of accounts receivable."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AccruedInterestReceivableBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This account shows the amount of unpaid interest accrued to the date of purchase and included in the purchase price of securities purchased between interest dates."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AdvanceFromFederalHomeLoanBanksBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This item is typically available for bank industry. It's the amount of borrowings as of the balance sheet date from the Federal Home Loan Bank, which are primarily used to cover shortages in the required reserve balance and liquidity shortages."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AllowanceForDoubtfulAccountsReceivableBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """An Allowance for Doubtful Accounts measures receivables recorded but not expected to be collected."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AllowanceForNotesReceivableBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This item is typically available for bank industry. It represents a provision relating to a written agreement to receive money with the terms of the note (at a specified future date(s) within one year from the reporting date (or the normal operating cycle, whichever is longer), consisting of principal as well as any accrued interest) for the portion that is expected to be uncollectible."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AssetsHeldForSaleBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This item is typically available for bank industry. It's a part of long-lived assets, which has been decided for sale in the future."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AssetsOfDiscontinuedOperationsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A portion of a company's business that has been disposed of or sold."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class BankIndebtednessBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """All indebtedness for borrowed money or the deferred purchase price of property or services, including without limitation reimbursement and other obligations with respect to surety bonds and letters of credit, all obligations evidenced by notes, bonds debentures or similar instruments, all capital lease obligations and all contingent obligations."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class BankOwnedLifeInsuranceBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The carrying amount of a life insurance policy on an officer, executive or employee for which the reporting entity (a bank) is entitled to proceeds from the policy upon death of the insured or surrender of the insurance policy."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class SecurityBorrowedBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The securities borrowed or on loan, which is the temporary loan of securities by a lender to a borrower in exchange for cash. This item is usually only available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class BuildingsAndImprovementsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Fixed assets that specifically deal with the facilities a company owns. Include the improvements associated with buildings."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CommercialLoanBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Short-term loan, typically 90 days, used by a company to finance seasonal working capital needs."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CommercialPaperBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Commercial paper is a money-market security issued by large banks and corporations. It represents the current obligation for the company. There are four basic kinds of commercial paper: promissory notes, drafts, checks, and certificates of deposit. The maturities of these money market securities generally do not exceed 270 days."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CommonStockEquityBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The portion of the Stockholders' Equity that reflects the amount of common stock, which are units of ownership."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ConstructionInProgressBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """It represents carrying amount of long-lived asset under construction that includes construction costs to date on capital projects. Assets constructed, but not completed."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ConsumerLoanBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A loan that establishes consumer credit that is granted for personal use; usually unsecured and based on the borrower's integrity and ability to pay."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class MinimumPensionLiabilitiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The company's minimum pension obligations to its former employees, paid into a defined pension plan to satisfy all pension entitlements that have been earned by employees to date."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CustomerAcceptancesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Amounts receivable from customers on short-term negotiable time drafts drawn on and accepted by the institution (also known as banker's acceptance transactions) that are outstanding on the reporting date."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DefinedPensionBenefitBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The recognition of an asset where pension fund assets exceed promised benefits."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DerivativeProductLiabilitiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Fair values of all liabilities resulting from contracts that meet the criteria of being accounted for as derivative instruments; and which are expected to be extinguished or otherwise disposed of after one year or beyond the normal operating cycle."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DerivativeAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Fair values of assets resulting from contracts that meet the criteria of being accounted for as derivative instruments, net of the effects of master netting arrangements."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DividendsPayableBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Sum of the carrying values of dividends declared but unpaid on equity securities issued and outstanding (also includes dividends collected on behalf of another owner of securities that are being held by entity) by the entity."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class EmployeeBenefitsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Carrying amount as of the balance sheet date of the portion of the obligations recognized for the various benefits provided to former or inactive employees, their beneficiaries, and covered dependents after employment but before retirement."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FederalFundsPurchasedBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The amount borrowed by a bank, at the federal funds rate, from another bank to meet its reserve requirements. This item is typically available for the bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FederalFundsSoldBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Federal funds transactions involve lending (federal funds sold) or borrowing (federal funds purchased) of immediately available reserve balances. This item is typically available for the bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FederalHomeLoanBankStockBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Federal Home Loan Bank stock represents an equity interest in a FHLB. It does not have a readily determinable fair value because its ownership is restricted and it lacks a market (liquidity). This item is typically available for the bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FinancialAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Fair values as of the balance sheet date of all assets resulting from contracts that meet the criteria of being accounted for as derivative instruments, net of the effects of master netting arrangements."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FinancialInstrumentsSoldUnderAgreementsToRepurchaseBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The carrying value as of the balance sheet date of securities that an institution sells and agrees to repurchase (the identical or substantially the same securities) as a seller-borrower at a specified date for a specified price, also known as a repurchase agreement. This item is typically available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FinishedGoodsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The carrying amount as of the balance sheet date of merchandise or goods held by the company that are readily available for sale. This item is typically available for mining and manufacturing industries."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FlightFleetVehicleAndRelatedEquipmentsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """It is one of the important fixed assets for transportation industry, which includes bicycles, cars, motorcycles, trains, ships, boats, and aircraft. This item is typically available for transportation industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ForeclosedAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The carrying amount as of the balance sheet date of all assets obtained in full or partial satisfaction of a debt arrangement through foreclosure proceedings or defeasance; includes real and personal property; equity interests in corporations, partnerships, and joint ventures; and beneficial interest in trusts. This item is typically typically available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ForeignCurrencyTranslationAdjustmentsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Changes to accumulated comprehensive income that results from the process of translating subsidiary financial statements and foreign equity investments into functional currency of the reporting company."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InventoriesAdjustmentsAllowancesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This item represents certain charges made in the current period in inventory resulting from such factors as breakage, spoilage, employee theft and shoplifting. This item is typically available for manufacturing, mining and utility industries."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InvestmentsInOtherVenturesUnderEquityMethodBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This item represents the carrying amount on the company's balance sheet of its investments in common stock of an equity method. This item is typically available for the insurance industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class LandAndImprovementsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Fixed Assets that specifically deal with land a company owns. Includes the improvements associated with land. This excludes land held for sale."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class LeasesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Carrying amount at the balance sheet date of a long-lived, depreciable asset that is an addition or improvement to assets held under lease arrangement. This item is usually not available for the insurance industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class LiabilitiesOfDiscontinuedOperationsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The obligations arising from the sale, disposal, or planned sale in the near future (generally within one year) of a disposal group, including a component of the entity (discontinued operation). This item is typically available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class LineOfCreditBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The carrying value as of the balance sheet date of obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class LoansHeldForSaleBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """It means the aggregate amount of loans receivable that will be sold to other entities. This item is typically available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class LoansReceivableBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Reflects the carrying amount of unpaid loans issued to other institutions for cash needs or an asset purchase."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class MachineryFurnitureEquipmentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Fixed assets specifically dealing with tools, equipment and office furniture. This item is usually not available for the insurance and utility industries."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class MaterialsAndSuppliesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Aggregated amount of unprocessed materials to be used in manufacturing or production process and supplies that will be consumed. This item is typically available for the utility industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class MineralPropertiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A fixed asset that represents strictly mineral type properties. This item is typically available for mining industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class MortgageLoanBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This is a lien on real estate to protect a lender. This item is typically available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class MortgageAndConsumerloansBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """It means the aggregate amount of mortgage and consumer loans. This item is typically available for the insurance industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class GrossNotesReceivableBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """An amount representing an agreement for an unconditional promise by the maker to pay the entity (holder) a definite sum of money at a future date(s) within one year of the balance sheet date or the normal operating cycle. Such amount may include accrued interest receivable in accordance with the terms of the note. The note also may contain provisions including a discount or premium, payable on demand, secured, or unsecured, interest bearing or non-interest bearing, among myriad other features and characteristics. This item is typically available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Other non-current assets that are not otherwise classified."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherCapitalStockBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Other Capital Stock that is not otherwise classified."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherCurrentAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Other current assets that are not otherwise classified."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherCurrentBorrowingsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Short Term Borrowings that are not otherwise classified."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherEquityAdjustmentsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Other adjustments to stockholders' equity that is not otherwise classified, including other reserves."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherInventoriesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Other non-current inventories not otherwise classified."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherInvestedAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """An item represents all the other investments or/and securities that cannot be defined into any category above. This item is typically available for the insurance industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherNonCurrentAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Other non-current assets that are not otherwise classified."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherPropertiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Other fixed assets not otherwise classified."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherRealEstateOwnedBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The Carrying amount as of the balance sheet date of other real estate, which may include real estate investments, real estate loans that qualify as investments in real estate, and premises that are no longer used in operations may also be included in real estate owned. This does not include real estate assets taken in settlement of troubled loans through surrender or foreclosure. This item is typically available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherReceivablesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Other non-current receivables not otherwise classified."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NonCurrentPensionAndOtherPostretirementBenefitPlansBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A loan issued by an insurance company that uses the cash value of a person's life insurance policy as collateral. This item is usually only available in the insurance industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PolicyLoansBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A loan issued by an insurance company that uses the cash value of a person's life insurance policy as collateral. This item is usually only available for insurance industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PreferredStockEquityBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A class of ownership in a company that has a higher claim on the assets and earnings than common stock. Preferred stock generally has a dividend that must be paid out before dividends to common stockholders and the shares usually do not have voting rights."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PropertiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Tangible assets that are held by an entity for use in the production or supply of goods and services, for rental to others, or for administrative purposes and that are expected to provide economic benefit for more than one year. This item is available for manufacturing, bank and transportation industries."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CurrentProvisionsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Provisions are created to protect the interests of one or both parties named in a contract or legal document which is a preparatory action or measure. Current provision is expired within one accounting PeriodAsByte."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class LongTermProvisionsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Provisions are created to protect the interests of one or both parties named in a contract or legal document which is a preparatory action or measure. Long-term provision is expired beyond one accounting PeriodAsByte."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class RawMaterialsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Carrying amount as of the balance sheet data of unprocessed items to be consumed in the manufacturing or production process. This item is available for manufacturing and mining industries."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ReceivablesAdjustmentsAllowancesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A provision relating to a written agreement to receive money at a specified future date(s) (within one year from the reporting date or the normal operating cycle, whichever is longer), consisting of principal as well as any accrued interest)."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class RegulatoryAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Carrying amount as of the balance sheet date of capitalized costs of regulated entities that are expected to be recovered through revenue sources over one year or beyond the normal operating cycle."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class RegulatoryLiabilitiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The amount for the individual regulatory noncurrent liability as itemized in a table of regulatory noncurrent liabilities as of the end of the PeriodAsByte. Such things as the costs of energy efficiency programs and low-income energy assistances programs and deferred fuel. This item is usually only available for utility industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ReinsuranceBalancesPayableBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The carrying amount as of the balance sheet date of the known and estimated amounts owed to insurers under reinsurance treaties or other arrangements. This item is usually only available for insurance industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class RestrictedCashBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The carrying amounts of cash and cash equivalent items, which are restricted as to withdrawal or usage. Restrictions may include legally restricted deposits held as compensating balances against short-term borrowing arrangements, contracts entered into with others, or entity statements of intention with regard to particular deposits; however, time deposits and short-term certificates of deposit are not generally included in legally restricted deposits. Excludes compensating balance arrangements that are not agreements, which legally restrict the use of cash amounts shown on the balance sheet. For a classified balance sheet, represents the current portion only (the non-current portion has a separate concept); for an unclassified balance sheet represents the entire amount. This item is usually not available for bank and insurance industries."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class RestrictedCashAndCashEquivalentsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The carrying amounts of cash and cash equivalent items which are restricted as to withdrawal or usage. This item is available for bank and insurance industries."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class RestrictedCashAndInvestmentsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The cash and investments whose use in whole or in part is restricted for the long-term, generally by contractual agreements or regulatory requirements. This item is usually only available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class RestrictedCommonStockBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Shares of stock for which sale is contractually or governmentally restricted for a given period of time. Stock that is acquired through an employee stock option plan or other private means may not be transferred. Restricted stock must be traded in compliance with special SEC regulations."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class RestrictedInvestmentsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Investments whose use is restricted in whole or in part, generally by contractual agreements or regulatory requirements. This item is usually only available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TaxesReceivableBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Carrying amount due within one year of the balance sheet date (or one operating cycle, if longer) from tax authorities as of the balance sheet date representing refunds of overpayments or recoveries based on agreed-upon resolutions of disputes. This item is usually not available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalCapitalizationBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Stockholder's Equity plus Long Term Debt."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalDeferredCreditsAndOtherNonCurrentLiabilitiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Revenue received by a firm but not yet reported as income. This item is usually only available for utility industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class UnbilledReceivablesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Revenues that are not currently billed from the customer under the terms of the contract. This item is usually only available for utility industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class UnrealizedGainLossBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A profit or loss that results from holding onto an asset rather than cashing it in and officially taking the profit or loss."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class WorkInProcessBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Work, or goods, in the process of being fabricated or manufactured but not yet completed as finished goods. This item is usually available for manufacturing and mining industries."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherNonCurrentLiabilitiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This item is usually not available for bank and insurance industries."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CapitalLeaseObligationsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Current Portion of Capital Lease Obligation plus Long Term Portion of Capital Lease Obligation."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherLiabilitiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This item is available for bank and insurance industries."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherPayableBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Payables and Accrued Expenses that are not defined as Trade, Tax or Dividends related."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TangibleBookValueBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The company's total book value less the value of any intangible assets. Methodology: Common Stock Equity minus Goodwill and Other Intangible Assets"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalEquityBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Total Equity equals Preferred Stock Equity + Common Stock Equity."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class WorkingCapitalBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Current Assets minus Current Liabilities. This item is usually not available for bank and insurance industries."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalDebtBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """All borrowings incurred by the company including debt and capital lease obligations."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CommonUtilityPlantBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The amount for the other plant related to the utility industry fix assets."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ElectricUtilityPlantBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The amount for the electric plant related to the utility industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NaturalGasFuelAndOtherBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The amount for the natural gas, fuel and other items related to the utility industry, which might include oil and gas wells, the properties to exploit oil and gas or liquefied natural gas sites."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetUtilityPlantBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Net utility plant might include water production, electric utility plan, natural gas, fuel and other, common utility plant and accumulated depreciation. This item is usually only available for utility industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class WaterProductionBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The amount for a facility and plant that provides water which might include wells, reservoirs, pumping stations, and control facilities; and waste water systems which includes the waste treatment and disposal facility and equipment. This item is usually only available for utility industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OrdinarySharesNumberBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Number of Common or Ordinary Shares."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PreferredSharesNumberBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Number of Preferred Shares."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TreasurySharesNumberBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Number of Treasury Shares."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TradingAndOtherReceivableBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This will serve as the "parent" value to AccountsReceivable (DataId 23001) and OtherReceivables (DataId 23342) for all company financials reported in the IFRS GAAP."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class EquityAttributableToOwnersOfParentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class SecuritiesLoanedBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The carrying value as of the balance sheet date of securities loaned to other broker dealers, typically used by such parties to cover short sales, secured by cash or other securities furnished by such parties until the borrowing is closed."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetTangibleAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Net assets in physical form. This is calculated using Stockholders' Equity less Intangible Assets (including Goodwill)."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DuefromRelatedPartiesCurrentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Amounts owed to the company from a non-arm's length entity, due within the company's current operating cycle."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DuefromRelatedPartiesNonCurrentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Amounts owed to the company from a non-arm's length entity, due after the company's current operating cycle."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DuetoRelatedPartiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Amounts owed by the company to a non-arm's length entity."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DuetoRelatedPartiesCurrentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Amounts owed by the company to a non-arm's length entity that has to be repaid within the company's current operating cycle."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DuetoRelatedPartiesNonCurrentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Amounts owed by the company to a non-arm's length entity that has to be repaid after the company's current operating cycle."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InvestmentPropertiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Company's investments in properties net of accumulated depreciation, which generate a return."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InvestmentsinSubsidiariesatCostBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A stake in any company which is more than 51%."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InvestmentsinAssociatesatCostBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A stake in any company which is more than 20% but less than 50%."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InvestmentsinJointVenturesatCostBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A 50% stake in any company in which remaining 50% belongs to other company."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InvestmentinFinancialAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Represents the sum of all financial investments (trading securities, available-for-sale securities, held-to-maturity securities, etc.)"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FinanceLeaseReceivablesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Accounts owed to the bank in relation to capital leases. Capital/ finance lease obligation are contractual obligations that arise from obtaining the use of property or equipment via a capital lease contract."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ConvertibleLoansCurrentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This represents loans that entitle the lender (or the holder of loan debenture) to convert the loan to common or preferred stock (ordinary or preference shares) within the next 12 months or operating cycle."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class BankLoansCurrentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A debt financing obligation issued by a bank or similar financial institution to a company, that entitles the lender or holder of the instrument to interest payments and the repayment of principal at a specified time within the next 12 months or operating cycle."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherLoansCurrentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Other loans between the customer and bank which cannot be identified by other specific items in the Debt section, due within the next 12 months or operating cycle."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AccruedandDeferredIncomeBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Sum of accrued liabilities and deferred income (amount received in advance but the services are not provided in respect of amount)."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class BankLoansNonCurrentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A debt financing obligation issued by a bank or similar financial institution to a company, that entitles the lender or holder of the instrument to interest payments and the repayment of principal at a specified time beyond the current accounting PeriodAsByte."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherLoansNonCurrentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Other loans between the customer and bank which cannot be identified by other specific items in the Debt section, due beyond the current operating cycle."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherReservesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Other reserves owned by the company that cannot be identified by other specific items in the Reserves section."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class LoansandAdvancestoBankBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The aggregate amount of loans and advances made to a bank or financial institution."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class LoansandAdvancestoCustomerBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The aggregate amount of loans and advances made to customers."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TreasuryBillsandOtherEligibleBillsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Investments backed by the central government, it usually carries less risk than other investments."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class EquitySharesInvestmentsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Investments in shares of a company representing ownership in that company."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DepositsbyBankBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Banks investment in the ongoing entity."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CustomerAccountsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Carrying value of amounts transferred by customers to third parties for security purposes that are expected to be returned or applied towards payment after one year or beyond the operating cycle, if longer."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ItemsinTheCourseofTransmissiontoOtherBanksBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Carrying amount as of the balance sheet date of drafts and bills of exchange that have been accepted by the reporting bank or by others for its own account, as its liability to holders of the drafts."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TradingandFinancialLiabilitiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Total carrying amount of total trading, financial liabilities and debt in a non-differentiated balance sheet."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DebtSecuritiesinIssueBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Any debt financial instrument issued instead of cash loan."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class SubordinatedLiabilitiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The total carrying value of securities loaned to other broker dealers, typically used by such parties to cover short sales, secured by cash or other securities furnished by such parties until the borrowing is closed; in a Non-Differentiated Balance Sheet."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ProvisionsTotalBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Provisions are created to protect the interests of one or both parties named in a contract or legal document, which is a preparatory action or measure. Current provision is expired within one accounting PeriodAsByte."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OperatingLeaseAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A contract that allows for the use of an asset, but does not convey rights of ownership of the asset. An operating lease is not capitalized; it is accounted for as a rental expense in what is known as "off balance sheet financing." For the lessor, the asset being leased is accounted for as an asset and is depreciated as such."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ClaimsOutstandingBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Amounts owing to policy holders who have filed claims but have not yet been settled or paid."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class LiabilitiesHeldforSaleCurrentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Liabilities due within the next 12 months related from an asset classified as Held for Sale."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class LiabilitiesHeldforSaleNonCurrentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Liabilities related to an asset classified as held for sale excluding the portion due the next 12 months or operating cycle."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DebtSecuritiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Debt securities held as investments."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalFinancialLeaseObligationsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Represents the total amount of long-term capital leases that must be paid within the next accounting period for a Non- Differentiated Balance Sheet. Capital lease obligations are contractual obligations that arise from obtaining the use of property or equipment via a capital lease contract."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AccruedandDeferredIncomeCurrentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Sum of Accrued Liabilities and Deferred Income (amount received in advance but the services are not provided in respect of amount) due within 1 year."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AccruedandDeferredIncomeNonCurrentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Sum of Accrued Liabilities and Deferred Income (amount received in advance but the services are not provided in respect of amount) due after 1 year."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FinanceLeaseReceivablesCurrentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Accounts owed to the bank in relation to capital leases to be received within the next accounting PeriodAsByte. Capital/ finance lease obligations are contractual obligations that arise from obtaining the use of property or equipment via a capital lease contract."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FinanceLeaseReceivablesNonCurrentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Accounts owed to the bank in relation to capital leases to be received beyond the next accounting PeriodAsByte. Capital/ finance lease obligations are contractual obligations that arise from obtaining the use of property or equipment via a capital lease contract."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FinancialLiabilitiesCurrentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Financial related liabilities due within one year, including short term and current portions of long-term debt, capital leases and derivative liabilities."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FinancialLiabilitiesNonCurrentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Financial related liabilities due beyond one year, including long term debt, capital leases and derivative liabilities."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FinancialAssetsDesignatedasFairValueThroughProfitorLossTotalBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Financial assets that are held at fair value through profit or loss comprise assets held for trading and those financial assets designated as being held at fair value through profit or loss."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TaxesAssetsCurrentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Carrying amount due within one year of the balance sheet date (or one operating cycle, if longer) from tax authorities as of the balance sheet date representing refunds of overpayments or recoveries based on agreed-upon resolutions of disputes, and current deferred tax assets."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherEquityInterestBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Other equity instruments issued by the company that cannot be identified by other specific items in the Equity section."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InterestBearingBorrowingsNonCurrentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Carrying amount of any interest-bearing loan which is due after one year."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NonInterestBearingBorrowingsNonCurrentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Non-interest bearing borrowings due after a year."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TradeandOtherPayablesNonCurrentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Sum of all non-current payables and accrued expenses."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NonInterestBearingBorrowingsCurrentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Non-interest bearing deposits in other financial institutions for short periods of time, usually less than 12 months."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PensionandOtherPostRetirementBenefitPlansCurrentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherLoanAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Reflects the carrying amount of any other unpaid loans, an asset of the bank."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AssetsPledgedasCollateralSubjecttoSaleorRepledgingTotalBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Total value collateral assets pledged to the bank that can be sold or used as collateral for other loans."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TaxAssetsTotalBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Sum of total tax assets in a Non-Differentiated Balance Sheet, includes Tax Receivables and Deferred Tax Assets."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AdvancesfromCentralBanksBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Borrowings from the central bank, which are primarily used to cover shortages in the required reserve balance and liquidity shortages."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DepositCertificatesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A savings certificate entitling the bearer to receive interest. A CD bears a maturity date, a specified fixed interest rate and can be issued in any denomination."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NonInterestBearingBorrowingsTotalBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Non-interest bearing deposits in other financial institutions for relatively short periods of time; on a Non-Differentiated Balance Sheet."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherBorrowedFundsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Other borrowings by the bank to fund its activities that cannot be identified by other specific items in the Liabilities section."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FinancialLiabilitiesDesignatedasFairValueThroughProfitorLossTotalBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Financial liabilities that are held at fair value through profit or loss."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FinancialLiabilitiesMeasuredatAmortizedCostTotalBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Financial liabilities carried at amortized cost."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AccruedLiabilitiesTotalBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Liabilities which have occurred, but have not been paid or logged under accounts payable during an accounting PeriodAsByte. In other words, obligations for goods and services provided to a company for which invoices have not yet been received; on a Non- Differentiated Balance Sheet."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DeferredIncomeTotalBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Collections of cash or other assets related to revenue producing activity for which revenue has not yet been recognized on a Non- Differentiated Balance Sheet."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DeferredTaxLiabilitiesTotalBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A future tax liability, resulting from temporary differences between book (accounting) value of assets and liabilities and their tax value or timing differences between the recognition of gains and losses in financial statements, on a Non-Differentiated Balance Sheet."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ReinsuranceAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Reinsurance asset is insurance that is purchased by an insurance company from another insurance company."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DepositsMadeunderAssumedReinsuranceContractBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Deposits made under reinsurance."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InsuranceContractAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A contract under which one party (the insurer) accepts significant insurance risk from another party (the policyholder) by agreeing to compensate the policyholder if a specified uncertain future event (the insured event) adversely affects the policyholder. This includes Insurance Receivables and Premiums Receivables."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InsuranceContractLiabilitiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Any type of insurance policy that protects an individual or business from the risk that they may be sued and held legally liable for something such as malpractice, injury or negligence. Liability insurance policies cover both legal costs and any legal payouts for which the insured would be responsible if found legally liable. Intentional damage and contractual liabilities are typically not covered in these types of policies."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DepositsReceivedunderCededInsuranceContractBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Deposit received through ceded insurance contract."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InvestmentContractLiabilitiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Liabilities due on the insurance investment contract."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PensionAndOtherPostretirementBenefitPlansTotalBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class LiabilitiesHeldforSaleTotalBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Liabilities related to an asset classified as held for sale."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class HedgingAssetsCurrentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A security transaction which expires within a 12 month period that reduces the risk on an existing investment position."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ConvertibleLoansTotalBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Loans that entitles the lender (or the holder of loan debenture) to convert the loan to common or preferred stock (ordinary or preference shares) at a specified rate conversion rate and a specified time frame; in a Non-Differentiated Balance Sheet."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class BankLoansTotalBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Total debt financing obligation issued by a bank or similar financial institution to a company that entitles the lender or holder of the instrument to interest payments and the repayment of principal at a specified time; in a Non-Differentiated Balance Sheet."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherLoansTotalBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Total other loans between the customer and bank which cannot be identified by other specific items in the Debt section; in a Non- Differentiated Balance Sheet."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InsuranceFundsNonCurrentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Liabilities related to insurance funds that are dissolved after one year."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DebtTotalBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The total aggregate of all written promises and/or agreements to repay a stated amount of borrowed funds at a specified date in the future; in a Non-Differentiated Balance Sheet."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ComTreShaNumBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The treasury stock number of common shares. This represents the number of common shares owned by the company as a result of share repurchase programs or donations."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PreTreShaNumBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The treasury stock number of preferred shares. This represents the number of preferred shares owned by the company as a result of share repurchase programs or donations."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetDebtBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This is a metric that shows a company's overall debt situation by netting the value of a company's liabilities and debts with its cash and other similar liquid assets. It is calculated using [Current Debt] + [Long Term Debt] - [Cash and Cash Equivalents]."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ShareIssuedBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The number of authorized shares that is sold to and held by the shareholders of a company, regardless of whether they are insiders, institutional investors or the general public. Unlike shares that are held as treasury stock, shares that have been retired are not included in this figure. The amount of issued shares can be all or part of the total amount of authorized shares of a corporation."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AssetsHeldForSaleCurrentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Short term assets set apart for sale to liquidate in the future and are measured at the lower of carrying amount and fair value less costs to sell."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AssetsHeldForSaleNonCurrentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Long term assets set apart for sale to liquidate in the future and are measured at the lower of carrying amount and fair value less costs to sell."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class BiologicalAssetsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Biological assets include plants and animals."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashRestrictedOrPledgedBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash that the company can use only for specific purposes or cash deposit or placing of owned property by a debtor (the pledger) to a creditor (the pledgee) as a security for a loan or obligation."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ConvertibleLoansNonCurrentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A long term loan with a warrant attached that gives the debt holder the option to exchange all or a portion of the loan principal for an equity position in the company at a predetermined rate of conversion within a specified period of time."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FinancialOrDerivativeInvestmentCurrentLiabilitiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Financial instruments that are linked to a specific financial instrument or indicator or commodity, and through which specific financial risks can be traded in financial markets in their own right, such as financial options, futures, forwards, etc."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherInvestmentsBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Investments that are neither Investment in Financial Assets nor Long term equity investment, not expected to be cashed within a year."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TradeAndOtherReceivablesNonCurrentBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Amounts due from customers or clients, more than one year from the balance sheet date, for goods or services that have been delivered or sold in the normal course of business, or other receivables."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DueFromRelatedPartiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """For an unclassified balance sheet, carrying amount as of the balance sheet date of obligations due all related parties."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class UnallocatedSurplusBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The amount of surplus from insurance contracts which has not been allocated at the balance sheet date. This is represented as a liability to policyholders, as it pertains to cumulative income arising from the with-profits business."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DebtDueInYear1BalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Debt due under 1 year according to the debt maturity schedule reported by the company."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DebtDueInYear2BalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Debt due under 2 years according to the debt maturity schedule reported by the company."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DebtDueInYear5BalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Debt due within 5 year if the company provide maturity schedule in range e.g. 1-5 years, 2-5 years. Debt due under 5 years according to the debt maturity schedule reported by the company. If a range is reported by the company, the value will be collected under the maximum number of years (eg. 1-5 years, 3-5 years or 5 years will all be collected under this data point.)"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DebtDueBeyondBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Debt maturing beyond 5 years (eg. 5-10 years) or with no specified maturity, according to the debt maturity schedule reported by the company."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalDebtInMaturityScheduleBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Total Debt in Maturity Schedule is the sum of Debt details above."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FixedAssetsRevaluationReserveBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Reserves created by revaluation of assets."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CurrentOtherFinancialLiabilitiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Other short term financial liabilities not categorized and due within one year or a normal operating cycle (whichever is longer)."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NonCurrentOtherFinancialLiabilitiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Other long term financial liabilities not categorized and due over one year or a normal operating cycle (whichever is longer)."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherFinancialLiabilitiesBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Other financial liabilities not categorized."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalLiabilitiesAsReportedBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Total liabilities as reported by the company, may be the same or not the same as Morningstar's standardized definition."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalEquityAsReportedBalanceSheet(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Total Equity as reported by the company, may be the same or not the same as Morningstar's standardized definition."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class BalanceSheet(ReusuableCLRObject):
    """Definition of the BalanceSheet class"""

    @property
    def BSFileDate(self) -> QuantConnect.Data.Fundamental.BalanceSheetFileDate:
        """Filing date of the Balance Sheet"""
        ...

    @property
    def AccountsPayable(self) -> QuantConnect.Data.Fundamental.AccountsPayableBalanceSheet:
        """Any money that a company owes its suppliers for goods and services purchased on credit and is expected to pay within the next year or operating cycle."""
        ...

    @property
    def AccountsReceivable(self) -> QuantConnect.Data.Fundamental.AccountsReceivableBalanceSheet:
        """Accounts owed to a company by customers within a year as a result of exchanging goods or services on credit."""
        ...

    @property
    def CurrentAccruedExpenses(self) -> QuantConnect.Data.Fundamental.CurrentAccruedExpensesBalanceSheet:
        """An expense recognized before it is paid for. Includes compensation, interest, pensions and all other miscellaneous accruals reported by the company. Expenses incurred during the accounting period, but not required to be paid until a later date."""
        ...

    @property
    def NonCurrentAccruedExpenses(self) -> QuantConnect.Data.Fundamental.NonCurrentAccruedExpensesBalanceSheet:
        """An expense that has occurred but the transaction has not been entered in the accounting records. Accordingly, an adjusting entry is made to debit the appropriate expense account and to credit a liability account such as accrued expenses payable or accounts payable."""
        ...

    @property
    def AccruedInvestmentIncome(self) -> QuantConnect.Data.Fundamental.AccruedInvestmentIncomeBalanceSheet:
        """Interest, dividends, rents, ancillary and other revenues earned but not yet received by the entity on its investments."""
        ...

    @property
    def AccumulatedDepreciation(self) -> QuantConnect.Data.Fundamental.AccumulatedDepreciationBalanceSheet:
        """The cumulative amount of wear and tear or obsolescence charged against the fixed assets of a company."""
        ...

    @property
    def GainsLossesNotAffectingRetainedEarnings(self) -> QuantConnect.Data.Fundamental.GainsLossesNotAffectingRetainedEarningsBalanceSheet:
        """The aggregate amount of gains or losses that are not part of retained earnings. It is also called other comprehensive income."""
        ...

    @property
    def AdditionalPaidInCapital(self) -> QuantConnect.Data.Fundamental.AdditionalPaidInCapitalBalanceSheet:
        """Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders. Includes adjustments to additional paid in capital. There are two major categories of additional paid in capital: 1) Paid in capital in excess of par/stated value, which is the difference between the actual issue price of the shares and the shares' par/stated value. 2) Paid in capital from other transactions which includes treasury stock, retirement of stock, stock dividends recorded at market, lapse of stock purchase warrants, conversion of convertible bonds in excess of the par value of the stock, and any other additional capital from the company's own stock transactions."""
        ...

    @property
    def AllowanceForLoansAndLeaseLosses(self) -> QuantConnect.Data.Fundamental.AllowanceForLoansAndLeaseLossesBalanceSheet:
        """A contra account sets aside as an allowance for bad loans (e.g. customer defaults)."""
        ...

    @property
    def AvailableForSaleSecurities(self) -> QuantConnect.Data.Fundamental.AvailableForSaleSecuritiesBalanceSheet:
        """For an unclassified balance sheet, this item represents equity securities categorized neither as held-to-maturity nor trading. Equity securities represent ownership interests or the right to acquire ownership interests in corporations and other legal entities which ownership interest is represented by shares of common or preferred stock (which is not mandatory redeemable or redeemable at the option of the holder), convertible securities, stock rights, or stock warrants. This category includes preferred stocks, available- for-sale and common stock, available-for-sale."""
        ...

    @property
    def CapitalStock(self) -> QuantConnect.Data.Fundamental.CapitalStockBalanceSheet:
        """The total amount of stock authorized for issue by a corporation, including common and preferred stock."""
        ...

    @property
    def Cash(self) -> QuantConnect.Data.Fundamental.CashBalanceSheet:
        """Cash includes currency on hand as well as demand deposits with banks or financial institutions. It also includes other kinds of accounts that have the general characteristics of demand deposits in that the customer may deposit additional funds at any time and also effectively may withdraw funds at any time without prior notice or penalty."""
        ...

    @property
    def CashEquivalents(self) -> QuantConnect.Data.Fundamental.CashEquivalentsBalanceSheet:
        """Cash equivalents, excluding items classified as marketable securities, include short-term, highly liquid investments that are both readily convertible to known amounts of cash, and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Generally, only investments with original maturities of three months or less qualify under this definition. Original maturity means original maturity to the entity holding the investment. For example, both a three-month US Treasury bill and a three-year Treasury note purchased three months from maturity qualify as cash equivalents. However, a Treasury note purchased three years ago does not become a cash equivalent when its remaining maturity is three months."""
        ...

    @property
    def CashAndCashEquivalents(self) -> QuantConnect.Data.Fundamental.CashAndCashEquivalentsBalanceSheet:
        """Includes unrestricted cash on hand, money market instruments and other debt securities which can be converted to cash immediately."""
        ...

    @property
    def CashAndDueFromBanks(self) -> QuantConnect.Data.Fundamental.CashAndDueFromBanksBalanceSheet:
        """Includes cash on hand (currency and coin), cash items in process of collection, non-interest bearing deposits due from other financial institutions (including corporate credit unions), and balances with the Federal Reserve Banks, Federal Home Loan Banks and central banks."""
        ...

    @property
    def CashCashEquivalentsAndFederalFundsSold(self) -> QuantConnect.Data.Fundamental.CashCashEquivalentsAndFederalFundsSoldBalanceSheet:
        """The aggregate amount of cash, cash equivalents, and federal funds sold."""
        ...

    @property
    def CashCashEquivalentsAndMarketableSecurities(self) -> QuantConnect.Data.Fundamental.CashCashEquivalentsAndMarketableSecuritiesBalanceSheet:
        """The aggregate amount of cash, cash equivalents, and marketable securities."""
        ...

    @property
    def CommonStock(self) -> QuantConnect.Data.Fundamental.CommonStockBalanceSheet:
        """Common stock (all issues) at par value, as reported within the Stockholder's Equity section of the balance sheet; i.e. it is one component of Common Stockholder's Equity"""
        ...

    @property
    def CurrentAssets(self) -> QuantConnect.Data.Fundamental.CurrentAssetsBalanceSheet:
        """The total amount of assets considered to be convertible into cash within a relatively short period of time, usually a year."""
        ...

    @property
    def CurrentDebt(self) -> QuantConnect.Data.Fundamental.CurrentDebtBalanceSheet:
        """Represents the total amount of long-term debt such as bank loans and commercial paper, which is due within one year."""
        ...

    @property
    def CurrentDebtAndCapitalLeaseObligation(self) -> QuantConnect.Data.Fundamental.CurrentDebtAndCapitalLeaseObligationBalanceSheet:
        """All borrowings due within one year including current portions of long-term debt and capital leases as well as short-term debt such as bank loans and commercial paper."""
        ...

    @property
    def CurrentLiabilities(self) -> QuantConnect.Data.Fundamental.CurrentLiabilitiesBalanceSheet:
        """The debts or obligations of the firm that are due within one year."""
        ...

    @property
    def CurrentCapitalLeaseObligation(self) -> QuantConnect.Data.Fundamental.CurrentCapitalLeaseObligationBalanceSheet:
        """Represents the total amount of long-term capital leases that must be paid within the next accounting period. Capital lease obligations are contractual obligations that arise from obtaining the use of property or equipment via a capital lease contract."""
        ...

    @property
    def DeferredAssets(self) -> QuantConnect.Data.Fundamental.DeferredAssetsBalanceSheet:
        """An amount owed to a firm that is not expected to be received by the firm within one year from the date of the balance sheet."""
        ...

    @property
    def DeferredCosts(self) -> QuantConnect.Data.Fundamental.DeferredCostsBalanceSheet:
        """An expenditure not recognized as a cost of operation of the period in which incurred, but carried forward to be written off in future periods."""
        ...

    @property
    def NonCurrentDeferredLiabilities(self) -> QuantConnect.Data.Fundamental.NonCurrentDeferredLiabilitiesBalanceSheet:
        """Represents the non-current portion of obligations, which is a liability that usually would have been paid but is now past due."""
        ...

    @property
    def CurrentDeferredLiabilities(self) -> QuantConnect.Data.Fundamental.CurrentDeferredLiabilitiesBalanceSheet:
        """Represents the current portion of obligations, which is a liability that usually would have been paid but is now past due."""
        ...

    @property
    def DeferredPolicyAcquisitionCosts(self) -> QuantConnect.Data.Fundamental.DeferredPolicyAcquisitionCostsBalanceSheet:
        """Net amount of deferred policy acquisition costs capitalized on contracts remaining in force as of the balance sheet date."""
        ...

    @property
    def CurrentDeferredRevenue(self) -> QuantConnect.Data.Fundamental.CurrentDeferredRevenueBalanceSheet:
        """Represents collections of cash or other assets related to revenue producing activity for which revenue has not yet been recognized. Generally, an entity records deferred revenue when it receives consideration from a customer before achieving certain criteria that must be met for revenue to be recognized in conformity with GAAP. It can be either current or non-current item. Also called unearned revenue."""
        ...

    @property
    def NonCurrentDeferredRevenue(self) -> QuantConnect.Data.Fundamental.NonCurrentDeferredRevenueBalanceSheet:
        """The non-current portion of deferred revenue amount as of the balance sheet date. Deferred revenue is a liability related to revenue producing activity for which revenue has not yet been recognized, and is not expected be recognized in the next twelve months."""
        ...

    @property
    def DeferredTaxAssets(self) -> QuantConnect.Data.Fundamental.DeferredTaxAssetsBalanceSheet:
        """An asset on a company's balance sheet that may be used to reduce any subsequent period's income tax expense. Deferred tax assets can arise due to net loss carryovers, which are only recorded as assets if it is deemed more likely than not that the asset will be used in future fiscal periods."""
        ...

    @property
    def CurrentDeferredTaxesAssets(self) -> QuantConnect.Data.Fundamental.CurrentDeferredTaxesAssetsBalanceSheet:
        """Meaning a future tax asset, resulting from temporary differences between book (accounting) value of assets and liabilities and their tax value, or timing differences between the recognition of gains and losses in financial statements and their recognition in a tax computation. It is also called future tax."""
        ...

    @property
    def CurrentDeferredTaxesLiabilities(self) -> QuantConnect.Data.Fundamental.CurrentDeferredTaxesLiabilitiesBalanceSheet:
        """Meaning a future tax liability, resulting from temporary differences between book (accounting) value of assets and liabilities and their tax value, or timing differences between the recognition of gains and losses in financial statements and their recognition in a tax computation. Deferred tax liabilities generally arise where tax relief is provided in advance of an accounting expense, or income is accrued but not taxed until received."""
        ...

    @property
    def NonCurrentDeferredTaxesAssets(self) -> QuantConnect.Data.Fundamental.NonCurrentDeferredTaxesAssetsBalanceSheet:
        """A result of timing differences between taxable incomes reported on the income statement and taxable income from the company's tax return. Depending on the positioning of deferred income taxes, the field may be either current (within current assets) or non- current (below total current assets). Typically a company will have two deferred income taxes fields."""
        ...

    @property
    def NonCurrentDeferredTaxesLiabilities(self) -> QuantConnect.Data.Fundamental.NonCurrentDeferredTaxesLiabilitiesBalanceSheet:
        """The estimated future tax obligations, which usually arise when different accounting methods are used for financial statements and tax statement It is also an add-back to the cash flow statement. Deferred income taxes include accumulated tax deferrals due to accelerated depreciation and investment credit."""
        ...

    @property
    def EquityInvestments(self) -> QuantConnect.Data.Fundamental.EquityInvestmentsBalanceSheet:
        """This asset represents equity securities categorized neither as held-to-maturity nor trading."""
        ...

    @property
    def FederalFundsPurchasedAndSecuritiesSoldUnderAgreementToRepurchase(self) -> QuantConnect.Data.Fundamental.FederalFundsPurchasedAndSecuritiesSoldUnderAgreementToRepurchaseBalanceSheet:
        """This liability refers to the amount shown on the books that a bank with insufficient reserves borrows, at the federal funds rate, from another bank to meet its reserve requirements; and the amount of securities that an institution sells and agrees to repurchase at a specified date for a specified price, net of any reductions or offsets."""
        ...

    @property
    def FederalFundsSoldAndSecuritiesPurchaseUnderAgreementsToResell(self) -> QuantConnect.Data.Fundamental.FederalFundsSoldAndSecuritiesPurchaseUnderAgreementsToResellBalanceSheet:
        """This asset refers to very-short-term loans of funds to other banks and securities dealers."""
        ...

    @property
    def FixedMaturityInvestments(self) -> QuantConnect.Data.Fundamental.FixedMaturityInvestmentsBalanceSheet:
        """This asset refers to types of investments that may be contained within the fixed maturity category which securities are having a stated final repayment date. Examples of items within this category may include bonds, including convertibles and bonds with warrants, and redeemable preferred stocks."""
        ...

    @property
    def FuturePolicyBenefits(self) -> QuantConnect.Data.Fundamental.FuturePolicyBenefitsBalanceSheet:
        """Accounting policy pertaining to an insurance entity's net liability for future benefits (for example, death, cash surrender value) to be paid to or on behalf of policyholders, describing the bases, methodologies and components of the reserve, and assumptions regarding estimates of expected investment yields, mortality, morbidity, terminations and expenses."""
        ...

    @property
    def GeneralPartnershipCapital(self) -> QuantConnect.Data.Fundamental.GeneralPartnershipCapitalBalanceSheet:
        """In a limited partnership or master limited partnership form of business, this represents the balance of capital held by the general partners."""
        ...

    @property
    def Goodwill(self) -> QuantConnect.Data.Fundamental.GoodwillBalanceSheet:
        """The excess of the cost of an acquired company over the sum of the fair market value of its identifiable individual assets less the liabilities."""
        ...

    @property
    def GoodwillAndOtherIntangibleAssets(self) -> QuantConnect.Data.Fundamental.GoodwillAndOtherIntangibleAssetsBalanceSheet:
        """Rights or economic benefits, such as patents and goodwill, that is not physical in nature. They are those that are neither physical nor financial in nature, nevertheless, have value to the company. Intangibles are listed net of accumulated amortization."""
        ...

    @property
    def GrossLoan(self) -> QuantConnect.Data.Fundamental.GrossLoanBalanceSheet:
        """Represents the sum of all loans (commercial, consumer, mortgage, etc.) as well as leases before any provisions for loan losses or unearned discounts."""
        ...

    @property
    def GrossPPE(self) -> QuantConnect.Data.Fundamental.GrossPPEBalanceSheet:
        """Carrying amount at the balance sheet date for long-lived physical assets used in the normal conduct of business and not intended for resale. This can include land, physical structures, machinery, vehicles, furniture, computer equipment, construction in progress, and similar items. Amount does not include depreciation."""
        ...

    @property
    def HeldToMaturitySecurities(self) -> QuantConnect.Data.Fundamental.HeldToMaturitySecuritiesBalanceSheet:
        """Debt securities that a firm has the ability and intent to hold until maturity."""
        ...

    @property
    def IncomeTaxPayable(self) -> QuantConnect.Data.Fundamental.IncomeTaxPayableBalanceSheet:
        """A current liability account which reflects the amount of income taxes currently due to the federal, state, and local governments."""
        ...

    @property
    def InterestBearingDepositsLiabilities(self) -> QuantConnect.Data.Fundamental.InterestBearingDepositsLiabilitiesBalanceSheet:
        """The aggregate of all domestic and foreign deposits in the bank that earns interests."""
        ...

    @property
    def InterestPayable(self) -> QuantConnect.Data.Fundamental.InterestPayableBalanceSheet:
        """Sum of the carrying values as of the balance sheet date of interest payable on all forms of debt, including trade payable that has been incurred."""
        ...

    @property
    def InterestBearingDepositsAssets(self) -> QuantConnect.Data.Fundamental.InterestBearingDepositsAssetsBalanceSheet:
        """Deposit of money with a financial institution, in consideration of which the financial institution pays or credits interest, or amounts in the nature of interest."""
        ...

    @property
    def Inventory(self) -> QuantConnect.Data.Fundamental.InventoryBalanceSheet:
        """A company's merchandise, raw materials, and finished and unfinished products which have not yet been sold."""
        ...

    @property
    def InvestmentsAndAdvances(self) -> QuantConnect.Data.Fundamental.InvestmentsAndAdvancesBalanceSheet:
        """All investments in affiliates, real estate, securities, etc. Non-current investment, not including marketable securities."""
        ...

    @property
    def LimitedPartnershipCapital(self) -> QuantConnect.Data.Fundamental.LimitedPartnershipCapitalBalanceSheet:
        """In a limited partnership or master limited partnership form of business, this represents the balance of capital held by the limited partners."""
        ...

    @property
    def LongTermDebt(self) -> QuantConnect.Data.Fundamental.LongTermDebtBalanceSheet:
        """Sum of the carrying values as of the balance sheet date of all long-term debt, which is debt initially having maturities due after one year or beyond the operating cycle, if longer, but excluding the portions thereof scheduled to be repaid within one year or the normal operating cycle, if longer. Long-term debt includes notes payable, bonds payable, mortgage loans, convertible debt, subordinated debt and other types of long term debt."""
        ...

    @property
    def LongTermDebtAndCapitalLeaseObligation(self) -> QuantConnect.Data.Fundamental.LongTermDebtAndCapitalLeaseObligationBalanceSheet:
        """All borrowings lasting over one year including long-term debt and long-term portion of capital lease obligations."""
        ...

    @property
    def LongTermInvestments(self) -> QuantConnect.Data.Fundamental.LongTermInvestmentsBalanceSheet:
        """Often referred to simply as "investments". Long-term investments are to be held for many years and are not intended to be disposed in the near future. This group usually consists of four types of investments."""
        ...

    @property
    def LongTermCapitalLeaseObligation(self) -> QuantConnect.Data.Fundamental.LongTermCapitalLeaseObligationBalanceSheet:
        """Represents the total liability for long-term leases lasting over one year. Amount equal to the present value (the principal) at the beginning of the lease term less lease payments during the lease term."""
        ...

    @property
    def MinorityInterest(self) -> QuantConnect.Data.Fundamental.MinorityInterestBalanceSheet:
        """Carrying amount of the equity interests owned by non-controlling shareholders, partners, or other equity holders in one or more of the entities included in the reporting entity's consolidated financial statements."""
        ...

    @property
    def MoneyMarketInvestments(self) -> QuantConnect.Data.Fundamental.MoneyMarketInvestmentsBalanceSheet:
        """Short-term (typical maturity is less than one year), highly liquid government or corporate debt instrument such as bankers' acceptance, promissory notes, and treasury bills."""
        ...

    @property
    def NetLoan(self) -> QuantConnect.Data.Fundamental.NetLoanBalanceSheet:
        """Represents the value of all loans after deduction of the appropriate allowances for loan and lease losses."""
        ...

    @property
    def NetPPE(self) -> QuantConnect.Data.Fundamental.NetPPEBalanceSheet:
        """Tangible assets that are held by an entity for use in the production or supply of goods and services, for rental to others, or for administrative purposes and that are expected to provide economic benefit for more than one year; net of accumulated depreciation."""
        ...

    @property
    def NonInterestBearingDeposits(self) -> QuantConnect.Data.Fundamental.NonInterestBearingDepositsBalanceSheet:
        """The aggregate amount of all domestic and foreign deposits in the banks that do not draw interest."""
        ...

    @property
    def CurrentNotesPayable(self) -> QuantConnect.Data.Fundamental.CurrentNotesPayableBalanceSheet:
        """Written promises to pay a stated sum at one or more specified dates in the future, within the accounting period."""
        ...

    @property
    def NotesReceivable(self) -> QuantConnect.Data.Fundamental.NotesReceivableBalanceSheet:
        """An amount representing an agreement for an unconditional promise by the maker to pay the entity (holder) a definite sum of money at a future date(s) within one year of the balance sheet date or the normal operating cycle, whichever is longer. Such amount may include accrued interest receivable in accordance with the terms of the note. The note also may contain provisions including a discount or premium, payable on demand, secured, or unsecured, interest bearing or non-interest bearing, among a myriad of other features and characteristics."""
        ...

    @property
    def NonCurrentNoteReceivables(self) -> QuantConnect.Data.Fundamental.NonCurrentNoteReceivablesBalanceSheet:
        """An amount representing an agreement for an unconditional promise by the maker to pay the entity (holder) a definite sum of money at a future date(s), excluding the portion that is expected to be received within one year of the balance sheet date or the normal operating cycle, whichever is longer."""
        ...

    @property
    def OtherCurrentLiabilities(self) -> QuantConnect.Data.Fundamental.OtherCurrentLiabilitiesBalanceSheet:
        """Other current liabilities = Total current liabilities - Payables and accrued Expenses - Current debt and capital lease obligation - provisions, current - deferred liabilities, current."""
        ...

    @property
    def OtherIntangibleAssets(self) -> QuantConnect.Data.Fundamental.OtherIntangibleAssetsBalanceSheet:
        """Sum of the carrying amounts of all intangible assets, excluding goodwill."""
        ...

    @property
    def OtherShortTermInvestments(self) -> QuantConnect.Data.Fundamental.OtherShortTermInvestmentsBalanceSheet:
        """The aggregate amount of short term investments, which will be expired within one year that are not specifically classified as Available-for-Sale, Held-to-Maturity, nor Trading investments."""
        ...

    @property
    def Payables(self) -> QuantConnect.Data.Fundamental.PayablesBalanceSheet:
        """The sum of all payables owed and expected to be paid within one year or one operating cycle, including accounts payables, taxes payable, dividends payable and all other current payables."""
        ...

    @property
    def PayablesAndAccruedExpenses(self) -> QuantConnect.Data.Fundamental.PayablesAndAccruedExpensesBalanceSheet:
        """This balance sheet account includes all current payables and accrued expenses."""
        ...

    @property
    def PolicyReservesBenefits(self) -> QuantConnect.Data.Fundamental.PolicyReservesBenefitsBalanceSheet:
        """Accounting policy pertaining to an insurance entity's net liability for future benefits (for example, death, cash surrender value) to be paid to or on behalf of policyholders, describing the bases, methodologies and components of the reserve, and assumptions regarding estimates of expected investment yields, mortality, morbidity, terminations and expenses."""
        ...

    @property
    def PolicyholderFunds(self) -> QuantConnect.Data.Fundamental.PolicyholderFundsBalanceSheet:
        """The total liability as of the balance sheet date of amounts due to policy holders, excluding future policy benefits and claims, including unpaid policy dividends, retrospective refunds, and undistributed earnings on participating business."""
        ...

    @property
    def PreferredSecuritiesOutsideStockEquity(self) -> QuantConnect.Data.Fundamental.PreferredSecuritiesOutsideStockEquityBalanceSheet:
        """Preferred securities that that firm treats as a liability. It includes convertible preferred stock or redeemable preferred stock."""
        ...

    @property
    def PreferredStock(self) -> QuantConnect.Data.Fundamental.PreferredStockBalanceSheet:
        """Preferred stock (all issues) at par value, as reported within the Stockholder's Equity section of the balance sheet."""
        ...

    @property
    def PrepaidAssets(self) -> QuantConnect.Data.Fundamental.PrepaidAssetsBalanceSheet:
        """Sum of the carrying amounts that are paid in advance for expenses, which will be charged against earnings in subsequent periods."""
        ...

    @property
    def NonCurrentPrepaidAssets(self) -> QuantConnect.Data.Fundamental.NonCurrentPrepaidAssetsBalanceSheet:
        """Sum of the carrying amounts that are paid in advance for expenses, which will be charged against earnings in periods after one year or beyond the operating cycle, if longer."""
        ...

    @property
    def Receivables(self) -> QuantConnect.Data.Fundamental.ReceivablesBalanceSheet:
        """The sum of all receivables owed by customers and affiliates within one year, including accounts receivable, notes receivable, premiums receivable, and other current receivables."""
        ...

    @property
    def ReinsuranceRecoverable(self) -> QuantConnect.Data.Fundamental.ReinsuranceRecoverableBalanceSheet:
        """The amount of benefits the ceding insurer expects to recover on insurance policies ceded to other insurance entities as of the balance sheet date for all guaranteed benefit types. It includes estimated amounts for claims incurred but not reported, and policy benefits, net of any related valuation allowance."""
        ...

    @property
    def RetainedEarnings(self) -> QuantConnect.Data.Fundamental.RetainedEarningsBalanceSheet:
        """The cumulative net income of the company from the date of its inception (or reorganization) to the date of the financial statement less the cumulative distributions to shareholders either directly (dividends) or indirectly (treasury stock)."""
        ...

    @property
    def SecuritiesLendingCollateral(self) -> QuantConnect.Data.Fundamental.SecuritiesLendingCollateralBalanceSheet:
        """The carrying value as of the balance sheet date of the liabilities collateral securities loaned to other broker-dealers. Borrowers of securities generally are required to provide collateral to the lenders of securities, commonly cash but sometimes other securities or standby letters of credit, with a value slightly higher than that of the securities borrowed."""
        ...

    @property
    def SecurityAgreeToBeResell(self) -> QuantConnect.Data.Fundamental.SecurityAgreeToBeResellBalanceSheet:
        """The carrying value of funds outstanding loaned in the form of security resale agreements if the agreement requires the purchaser to resell the identical security purchased or a security that meets the definition of "substantially the same" in the case of a dollar roll. Also includes purchases of participations in pools of securities that are subject to a resale agreement."""
        ...

    @property
    def SecuritySoldNotYetRepurchased(self) -> QuantConnect.Data.Fundamental.SecuritySoldNotYetRepurchasedBalanceSheet:
        """Represent obligations of the company to deliver the specified security at the contracted price and, thereby, create a liability to purchase the security in the market at prevailing prices."""
        ...

    @property
    def SeparateAccountAssets(self) -> QuantConnect.Data.Fundamental.SeparateAccountAssetsBalanceSheet:
        """The fair value of the assets held by the company for the benefit of separate account policyholders."""
        ...

    @property
    def SeparateAccountBusiness(self) -> QuantConnect.Data.Fundamental.SeparateAccountBusinessBalanceSheet:
        """Refers to revenue that is generated that is not part of typical operations."""
        ...

    @property
    def ShortTermInvestmentsAvailableForSale(self) -> QuantConnect.Data.Fundamental.ShortTermInvestmentsAvailableForSaleBalanceSheet:
        """The current assets section of a company's balance sheet that contains the investments that a company holds with the purpose for trading."""
        ...

    @property
    def ShortTermInvestmentsHeldToMaturity(self) -> QuantConnect.Data.Fundamental.ShortTermInvestmentsHeldToMaturityBalanceSheet:
        """The current assets section of a company's balance sheet that contains the investments that a company has made that will expire at a fixed date within one year."""
        ...

    @property
    def ShortTermInvestmentsTrading(self) -> QuantConnect.Data.Fundamental.ShortTermInvestmentsTradingBalanceSheet:
        """The current assets section of a company's balance sheet that contains the investments that a company can trade at any moment."""
        ...

    @property
    def StockholdersEquity(self) -> QuantConnect.Data.Fundamental.StockholdersEquityBalanceSheet:
        """The residual interest in the assets of the enterprise that remains after deducting its liabilities. Equity is increased by owners' investments and by comprehensive income, and it is reduced by distributions to the owners."""
        ...

    @property
    def TotalTaxPayable(self) -> QuantConnect.Data.Fundamental.TotalTaxPayableBalanceSheet:
        """A liability that reflects the taxes owed to federal, state, and local tax authorities. It is the carrying value as of the balance sheet date of obligations incurred and payable for statutory income, sales, use, payroll, excise, real, property and other taxes."""
        ...

    @property
    def TotalAssets(self) -> QuantConnect.Data.Fundamental.TotalAssetsBalanceSheet:
        """The aggregate amount of probable future economic benefits obtained or controlled by a particular enterprise as a result of past transactions or events."""
        ...

    @property
    def TotalDeposits(self) -> QuantConnect.Data.Fundamental.TotalDepositsBalanceSheet:
        """A liability account which represents the total amount of funds deposited."""
        ...

    @property
    def TotalInvestments(self) -> QuantConnect.Data.Fundamental.TotalInvestmentsBalanceSheet:
        """Asset that refers to the sum of all available for sale securities and other investments often reported on the balance sheet of insurance firms."""
        ...

    @property
    def TotalNonCurrentAssets(self) -> QuantConnect.Data.Fundamental.TotalNonCurrentAssetsBalanceSheet:
        """Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold or consumed after one year or beyond the normal operating cycle, if longer."""
        ...

    @property
    def TotalPartnershipCapital(self) -> QuantConnect.Data.Fundamental.TotalPartnershipCapitalBalanceSheet:
        """Ownership interest of different classes of partners in the publicly listed limited partnership or master limited partnership. Partners include general, limited and preferred partners."""
        ...

    @property
    def TradingAssets(self) -> QuantConnect.Data.Fundamental.TradingAssetsBalanceSheet:
        """Trading account assets are bought and held principally for the purpose of selling them in the near term (thus held for only a short period of time). Unrealized holding gains and losses for trading securities are included in earnings."""
        ...

    @property
    def TradingLiabilities(self) -> QuantConnect.Data.Fundamental.TradingLiabilitiesBalanceSheet:
        """The carrying amount of liabilities as of the balance sheet date that pertain to principal and customer trading transactions, or which may be incurred with the objective of generating a profit from short-term fluctuations in price as part of an entity's market-making, hedging and proprietary trading. Examples include short positions in securities, derivatives and commodities, obligations under repurchase agreements, and securities borrowed arrangements."""
        ...

    @property
    def TradingSecurities(self) -> QuantConnect.Data.Fundamental.TradingSecuritiesBalanceSheet:
        """The total of financial instruments that are bought and held principally for the purpose of selling them in the near term (thus held for only a short period of time) or for debt and equity securities formerly categorized as available-for-sale or held-to-maturity which the company held as of the date it opted to account for such securities at fair value."""
        ...

    @property
    def TreasuryStock(self) -> QuantConnect.Data.Fundamental.TreasuryStockBalanceSheet:
        """The portion of shares that a company keeps in their own treasury. Treasury stock may have come from a repurchase or buyback from shareholders; or it may have never been issued to the public in the first place. These shares don't pay dividends, have no voting rights, and are not included in shares outstanding calculations."""
        ...

    @property
    def UnearnedIncome(self) -> QuantConnect.Data.Fundamental.UnearnedIncomeBalanceSheet:
        """Income received but not yet earned, it represents the unearned amount that is netted against the total loan."""
        ...

    @property
    def UnearnedPremiums(self) -> QuantConnect.Data.Fundamental.UnearnedPremiumsBalanceSheet:
        """Carrying amount of premiums written on insurance contracts that have not been earned as of the balance sheet date."""
        ...

    @property
    def UnpaidLossAndLossReserve(self) -> QuantConnect.Data.Fundamental.UnpaidLossAndLossReserveBalanceSheet:
        """Liability amount that reflects claims that are expected based upon statistical projections, but which have not been reported to the insurer."""
        ...

    @property
    def InvestedCapital(self) -> QuantConnect.Data.Fundamental.InvestedCapitalBalanceSheet:
        """Invested capital = common shareholders' equity + long term debt + current debt"""
        ...

    @property
    def CurrentDeferredAssets(self) -> QuantConnect.Data.Fundamental.CurrentDeferredAssetsBalanceSheet:
        """Payments that will be assigned as expenses with one accounting period, but that are paid in advance and temporarily set up as current assets on the balance sheet."""
        ...

    @property
    def NonCurrentDeferredAssets(self) -> QuantConnect.Data.Fundamental.NonCurrentDeferredAssetsBalanceSheet:
        """Payments that will be assigned as expenses longer than one accounting period, but that are paid in advance and temporarily set up as non-current assets on the balance sheet."""
        ...

    @property
    def SecuritiesAndInvestments(self) -> QuantConnect.Data.Fundamental.SecuritiesAndInvestmentsBalanceSheet:
        """Asset, often applicable to Banks, which refers to the aggregate amount of all securities and investments."""
        ...

    @property
    def TotalLiabilitiesNetMinorityInterest(self) -> QuantConnect.Data.Fundamental.TotalLiabilitiesNetMinorityInterestBalanceSheet:
        """Probable future sacrifices of economic benefits arising from present obligations of an enterprise to transfer assets or provide services to others in the future as a result of past transactions or events, excluding minority interest."""
        ...

    @property
    def TotalNonCurrentLiabilitiesNetMinorityInterest(self) -> QuantConnect.Data.Fundamental.TotalNonCurrentLiabilitiesNetMinorityInterestBalanceSheet:
        """Total obligations, net minority interest, incurred as part of normal operations that is expected to be repaid beyond the following twelve months or one business cycle; excludes minority interest."""
        ...

    @property
    def TotalEquityGrossMinorityInterest(self) -> QuantConnect.Data.Fundamental.TotalEquityGrossMinorityInterestBalanceSheet:
        """Residual interest, including minority interest, that remains in the assets of the enterprise after deducting its liabilities. Equity is increased by owners' investments and by comprehensive income, and it is reduced by distributions to the owners."""
        ...

    @property
    def GrossAccountsReceivable(self) -> QuantConnect.Data.Fundamental.GrossAccountsReceivableBalanceSheet:
        """Accounts owed to a company by customers within a year as a result of exchanging goods or services on credit."""
        ...

    @property
    def NonCurrentAccountsReceivable(self) -> QuantConnect.Data.Fundamental.NonCurrentAccountsReceivableBalanceSheet:
        """Accounts receivable represents sums owed to the business that the business records as revenue. Gross accounts receivable is accounts receivable before the business deducts uncollectable accounts to calculate the true value of accounts receivable."""
        ...

    @property
    def AccruedInterestReceivable(self) -> QuantConnect.Data.Fundamental.AccruedInterestReceivableBalanceSheet:
        """This account shows the amount of unpaid interest accrued to the date of purchase and included in the purchase price of securities purchased between interest dates."""
        ...

    @property
    def AdvanceFromFederalHomeLoanBanks(self) -> QuantConnect.Data.Fundamental.AdvanceFromFederalHomeLoanBanksBalanceSheet:
        """This item is typically available for bank industry. It's the amount of borrowings as of the balance sheet date from the Federal Home Loan Bank, which are primarily used to cover shortages in the required reserve balance and liquidity shortages."""
        ...

    @property
    def AllowanceForDoubtfulAccountsReceivable(self) -> QuantConnect.Data.Fundamental.AllowanceForDoubtfulAccountsReceivableBalanceSheet:
        """An Allowance for Doubtful Accounts measures receivables recorded but not expected to be collected."""
        ...

    @property
    def AllowanceForNotesReceivable(self) -> QuantConnect.Data.Fundamental.AllowanceForNotesReceivableBalanceSheet:
        """This item is typically available for bank industry. It represents a provision relating to a written agreement to receive money with the terms of the note (at a specified future date(s) within one year from the reporting date (or the normal operating cycle, whichever is longer), consisting of principal as well as any accrued interest) for the portion that is expected to be uncollectible."""
        ...

    @property
    def AssetsHeldForSale(self) -> QuantConnect.Data.Fundamental.AssetsHeldForSaleBalanceSheet:
        """This item is typically available for bank industry. It's a part of long-lived assets, which has been decided for sale in the future."""
        ...

    @property
    def AssetsOfDiscontinuedOperations(self) -> QuantConnect.Data.Fundamental.AssetsOfDiscontinuedOperationsBalanceSheet:
        """A portion of a company's business that has been disposed of or sold."""
        ...

    @property
    def BankIndebtedness(self) -> QuantConnect.Data.Fundamental.BankIndebtednessBalanceSheet:
        """All indebtedness for borrowed money or the deferred purchase price of property or services, including without limitation reimbursement and other obligations with respect to surety bonds and letters of credit, all obligations evidenced by notes, bonds debentures or similar instruments, all capital lease obligations and all contingent obligations."""
        ...

    @property
    def BankOwnedLifeInsurance(self) -> QuantConnect.Data.Fundamental.BankOwnedLifeInsuranceBalanceSheet:
        """The carrying amount of a life insurance policy on an officer, executive or employee for which the reporting entity (a bank) is entitled to proceeds from the policy upon death of the insured or surrender of the insurance policy."""
        ...

    @property
    def SecurityBorrowed(self) -> QuantConnect.Data.Fundamental.SecurityBorrowedBalanceSheet:
        """The securities borrowed or on loan, which is the temporary loan of securities by a lender to a borrower in exchange for cash. This item is usually only available for bank industry."""
        ...

    @property
    def BuildingsAndImprovements(self) -> QuantConnect.Data.Fundamental.BuildingsAndImprovementsBalanceSheet:
        """Fixed assets that specifically deal with the facilities a company owns. Include the improvements associated with buildings."""
        ...

    @property
    def CommercialLoan(self) -> QuantConnect.Data.Fundamental.CommercialLoanBalanceSheet:
        """Short-term loan, typically 90 days, used by a company to finance seasonal working capital needs."""
        ...

    @property
    def CommercialPaper(self) -> QuantConnect.Data.Fundamental.CommercialPaperBalanceSheet:
        """Commercial paper is a money-market security issued by large banks and corporations. It represents the current obligation for the company. There are four basic kinds of commercial paper: promissory notes, drafts, checks, and certificates of deposit. The maturities of these money market securities generally do not exceed 270 days."""
        ...

    @property
    def CommonStockEquity(self) -> QuantConnect.Data.Fundamental.CommonStockEquityBalanceSheet:
        """The portion of the Stockholders' Equity that reflects the amount of common stock, which are units of ownership."""
        ...

    @property
    def ConstructionInProgress(self) -> QuantConnect.Data.Fundamental.ConstructionInProgressBalanceSheet:
        """It represents carrying amount of long-lived asset under construction that includes construction costs to date on capital projects. Assets constructed, but not completed."""
        ...

    @property
    def ConsumerLoan(self) -> QuantConnect.Data.Fundamental.ConsumerLoanBalanceSheet:
        """A loan that establishes consumer credit that is granted for personal use; usually unsecured and based on the borrower's integrity and ability to pay."""
        ...

    @property
    def MinimumPensionLiabilities(self) -> QuantConnect.Data.Fundamental.MinimumPensionLiabilitiesBalanceSheet:
        """The company's minimum pension obligations to its former employees, paid into a defined pension plan to satisfy all pension entitlements that have been earned by employees to date."""
        ...

    @property
    def CustomerAcceptances(self) -> QuantConnect.Data.Fundamental.CustomerAcceptancesBalanceSheet:
        """Amounts receivable from customers on short-term negotiable time drafts drawn on and accepted by the institution (also known as banker's acceptance transactions) that are outstanding on the reporting date."""
        ...

    @property
    def DefinedPensionBenefit(self) -> QuantConnect.Data.Fundamental.DefinedPensionBenefitBalanceSheet:
        """The recognition of an asset where pension fund assets exceed promised benefits."""
        ...

    @property
    def DerivativeProductLiabilities(self) -> QuantConnect.Data.Fundamental.DerivativeProductLiabilitiesBalanceSheet:
        """Fair values of all liabilities resulting from contracts that meet the criteria of being accounted for as derivative instruments; and which are expected to be extinguished or otherwise disposed of after one year or beyond the normal operating cycle."""
        ...

    @property
    def DerivativeAssets(self) -> QuantConnect.Data.Fundamental.DerivativeAssetsBalanceSheet:
        """Fair values of assets resulting from contracts that meet the criteria of being accounted for as derivative instruments, net of the effects of master netting arrangements."""
        ...

    @property
    def DividendsPayable(self) -> QuantConnect.Data.Fundamental.DividendsPayableBalanceSheet:
        """Sum of the carrying values of dividends declared but unpaid on equity securities issued and outstanding (also includes dividends collected on behalf of another owner of securities that are being held by entity) by the entity."""
        ...

    @property
    def EmployeeBenefits(self) -> QuantConnect.Data.Fundamental.EmployeeBenefitsBalanceSheet:
        """Carrying amount as of the balance sheet date of the portion of the obligations recognized for the various benefits provided to former or inactive employees, their beneficiaries, and covered dependents after employment but before retirement."""
        ...

    @property
    def FederalFundsPurchased(self) -> QuantConnect.Data.Fundamental.FederalFundsPurchasedBalanceSheet:
        """The amount borrowed by a bank, at the federal funds rate, from another bank to meet its reserve requirements. This item is typically available for the bank industry."""
        ...

    @property
    def FederalFundsSold(self) -> QuantConnect.Data.Fundamental.FederalFundsSoldBalanceSheet:
        """Federal funds transactions involve lending (federal funds sold) or borrowing (federal funds purchased) of immediately available reserve balances. This item is typically available for the bank industry."""
        ...

    @property
    def FederalHomeLoanBankStock(self) -> QuantConnect.Data.Fundamental.FederalHomeLoanBankStockBalanceSheet:
        """Federal Home Loan Bank stock represents an equity interest in a FHLB. It does not have a readily determinable fair value because its ownership is restricted and it lacks a market (liquidity). This item is typically available for the bank industry."""
        ...

    @property
    def FinancialAssets(self) -> QuantConnect.Data.Fundamental.FinancialAssetsBalanceSheet:
        """Fair values as of the balance sheet date of all assets resulting from contracts that meet the criteria of being accounted for as derivative instruments, net of the effects of master netting arrangements."""
        ...

    @property
    def FinancialInstrumentsSoldUnderAgreementsToRepurchase(self) -> QuantConnect.Data.Fundamental.FinancialInstrumentsSoldUnderAgreementsToRepurchaseBalanceSheet:
        """The carrying value as of the balance sheet date of securities that an institution sells and agrees to repurchase (the identical or substantially the same securities) as a seller-borrower at a specified date for a specified price, also known as a repurchase agreement. This item is typically available for bank industry."""
        ...

    @property
    def FinishedGoods(self) -> QuantConnect.Data.Fundamental.FinishedGoodsBalanceSheet:
        """The carrying amount as of the balance sheet date of merchandise or goods held by the company that are readily available for sale. This item is typically available for mining and manufacturing industries."""
        ...

    @property
    def FlightFleetVehicleAndRelatedEquipments(self) -> QuantConnect.Data.Fundamental.FlightFleetVehicleAndRelatedEquipmentsBalanceSheet:
        """It is one of the important fixed assets for transportation industry, which includes bicycles, cars, motorcycles, trains, ships, boats, and aircraft. This item is typically available for transportation industry."""
        ...

    @property
    def ForeclosedAssets(self) -> QuantConnect.Data.Fundamental.ForeclosedAssetsBalanceSheet:
        """The carrying amount as of the balance sheet date of all assets obtained in full or partial satisfaction of a debt arrangement through foreclosure proceedings or defeasance; includes real and personal property; equity interests in corporations, partnerships, and joint ventures; and beneficial interest in trusts. This item is typically typically available for bank industry."""
        ...

    @property
    def ForeignCurrencyTranslationAdjustments(self) -> QuantConnect.Data.Fundamental.ForeignCurrencyTranslationAdjustmentsBalanceSheet:
        """Changes to accumulated comprehensive income that results from the process of translating subsidiary financial statements and foreign equity investments into functional currency of the reporting company."""
        ...

    @property
    def InventoriesAdjustmentsAllowances(self) -> QuantConnect.Data.Fundamental.InventoriesAdjustmentsAllowancesBalanceSheet:
        """This item represents certain charges made in the current period in inventory resulting from such factors as breakage, spoilage, employee theft and shoplifting. This item is typically available for manufacturing, mining and utility industries."""
        ...

    @property
    def InvestmentsInOtherVenturesUnderEquityMethod(self) -> QuantConnect.Data.Fundamental.InvestmentsInOtherVenturesUnderEquityMethodBalanceSheet:
        """This item represents the carrying amount on the company's balance sheet of its investments in common stock of an equity method. This item is typically available for the insurance industry."""
        ...

    @property
    def LandAndImprovements(self) -> QuantConnect.Data.Fundamental.LandAndImprovementsBalanceSheet:
        """Fixed Assets that specifically deal with land a company owns. Includes the improvements associated with land. This excludes land held for sale."""
        ...

    @property
    def Leases(self) -> QuantConnect.Data.Fundamental.LeasesBalanceSheet:
        """Carrying amount at the balance sheet date of a long-lived, depreciable asset that is an addition or improvement to assets held under lease arrangement. This item is usually not available for the insurance industry."""
        ...

    @property
    def LiabilitiesOfDiscontinuedOperations(self) -> QuantConnect.Data.Fundamental.LiabilitiesOfDiscontinuedOperationsBalanceSheet:
        """The obligations arising from the sale, disposal, or planned sale in the near future (generally within one year) of a disposal group, including a component of the entity (discontinued operation). This item is typically available for bank industry."""
        ...

    @property
    def LineOfCredit(self) -> QuantConnect.Data.Fundamental.LineOfCreditBalanceSheet:
        """The carrying value as of the balance sheet date of obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount."""
        ...

    @property
    def LoansHeldForSale(self) -> QuantConnect.Data.Fundamental.LoansHeldForSaleBalanceSheet:
        """It means the aggregate amount of loans receivable that will be sold to other entities. This item is typically available for bank industry."""
        ...

    @property
    def LoansReceivable(self) -> QuantConnect.Data.Fundamental.LoansReceivableBalanceSheet:
        """Reflects the carrying amount of unpaid loans issued to other institutions for cash needs or an asset purchase."""
        ...

    @property
    def MachineryFurnitureEquipment(self) -> QuantConnect.Data.Fundamental.MachineryFurnitureEquipmentBalanceSheet:
        """Fixed assets specifically dealing with tools, equipment and office furniture. This item is usually not available for the insurance and utility industries."""
        ...

    @property
    def MaterialsAndSupplies(self) -> QuantConnect.Data.Fundamental.MaterialsAndSuppliesBalanceSheet:
        """Aggregated amount of unprocessed materials to be used in manufacturing or production process and supplies that will be consumed. This item is typically available for the utility industry."""
        ...

    @property
    def MineralProperties(self) -> QuantConnect.Data.Fundamental.MineralPropertiesBalanceSheet:
        """A fixed asset that represents strictly mineral type properties. This item is typically available for mining industry."""
        ...

    @property
    def MortgageLoan(self) -> QuantConnect.Data.Fundamental.MortgageLoanBalanceSheet:
        """This is a lien on real estate to protect a lender. This item is typically available for bank industry."""
        ...

    @property
    def MortgageAndConsumerloans(self) -> QuantConnect.Data.Fundamental.MortgageAndConsumerloansBalanceSheet:
        """It means the aggregate amount of mortgage and consumer loans. This item is typically available for the insurance industry."""
        ...

    @property
    def GrossNotesReceivable(self) -> QuantConnect.Data.Fundamental.GrossNotesReceivableBalanceSheet:
        """An amount representing an agreement for an unconditional promise by the maker to pay the entity (holder) a definite sum of money at a future date(s) within one year of the balance sheet date or the normal operating cycle. Such amount may include accrued interest receivable in accordance with the terms of the note. The note also may contain provisions including a discount or premium, payable on demand, secured, or unsecured, interest bearing or non-interest bearing, among myriad other features and characteristics. This item is typically available for bank industry."""
        ...

    @property
    def OtherAssets(self) -> QuantConnect.Data.Fundamental.OtherAssetsBalanceSheet:
        """Other non-current assets that are not otherwise classified."""
        ...

    @property
    def OtherCapitalStock(self) -> QuantConnect.Data.Fundamental.OtherCapitalStockBalanceSheet:
        """Other Capital Stock that is not otherwise classified."""
        ...

    @property
    def OtherCurrentAssets(self) -> QuantConnect.Data.Fundamental.OtherCurrentAssetsBalanceSheet:
        """Other current assets that are not otherwise classified."""
        ...

    @property
    def OtherCurrentBorrowings(self) -> QuantConnect.Data.Fundamental.OtherCurrentBorrowingsBalanceSheet:
        """Short Term Borrowings that are not otherwise classified."""
        ...

    @property
    def OtherEquityAdjustments(self) -> QuantConnect.Data.Fundamental.OtherEquityAdjustmentsBalanceSheet:
        """Other adjustments to stockholders' equity that is not otherwise classified, including other reserves."""
        ...

    @property
    def OtherInventories(self) -> QuantConnect.Data.Fundamental.OtherInventoriesBalanceSheet:
        """Other non-current inventories not otherwise classified."""
        ...

    @property
    def OtherInvestedAssets(self) -> QuantConnect.Data.Fundamental.OtherInvestedAssetsBalanceSheet:
        """An item represents all the other investments or/and securities that cannot be defined into any category above. This item is typically available for the insurance industry."""
        ...

    @property
    def OtherNonCurrentAssets(self) -> QuantConnect.Data.Fundamental.OtherNonCurrentAssetsBalanceSheet:
        """Other non-current assets that are not otherwise classified."""
        ...

    @property
    def OtherProperties(self) -> QuantConnect.Data.Fundamental.OtherPropertiesBalanceSheet:
        """Other fixed assets not otherwise classified."""
        ...

    @property
    def OtherRealEstateOwned(self) -> QuantConnect.Data.Fundamental.OtherRealEstateOwnedBalanceSheet:
        """The Carrying amount as of the balance sheet date of other real estate, which may include real estate investments, real estate loans that qualify as investments in real estate, and premises that are no longer used in operations may also be included in real estate owned. This does not include real estate assets taken in settlement of troubled loans through surrender or foreclosure. This item is typically available for bank industry."""
        ...

    @property
    def OtherReceivables(self) -> QuantConnect.Data.Fundamental.OtherReceivablesBalanceSheet:
        """Other non-current receivables not otherwise classified."""
        ...

    @property
    def NonCurrentPensionAndOtherPostretirementBenefitPlans(self) -> QuantConnect.Data.Fundamental.NonCurrentPensionAndOtherPostretirementBenefitPlansBalanceSheet:
        """A loan issued by an insurance company that uses the cash value of a person's life insurance policy as collateral. This item is usually only available in the insurance industry."""
        ...

    @property
    def PolicyLoans(self) -> QuantConnect.Data.Fundamental.PolicyLoansBalanceSheet:
        """A loan issued by an insurance company that uses the cash value of a person's life insurance policy as collateral. This item is usually only available for insurance industry."""
        ...

    @property
    def PreferredStockEquity(self) -> QuantConnect.Data.Fundamental.PreferredStockEquityBalanceSheet:
        """A class of ownership in a company that has a higher claim on the assets and earnings than common stock. Preferred stock generally has a dividend that must be paid out before dividends to common stockholders and the shares usually do not have voting rights."""
        ...

    @property
    def Properties(self) -> QuantConnect.Data.Fundamental.PropertiesBalanceSheet:
        """Tangible assets that are held by an entity for use in the production or supply of goods and services, for rental to others, or for administrative purposes and that are expected to provide economic benefit for more than one year. This item is available for manufacturing, bank and transportation industries."""
        ...

    @property
    def CurrentProvisions(self) -> QuantConnect.Data.Fundamental.CurrentProvisionsBalanceSheet:
        """Provisions are created to protect the interests of one or both parties named in a contract or legal document which is a preparatory action or measure. Current provision is expired within one accounting period."""
        ...

    @property
    def LongTermProvisions(self) -> QuantConnect.Data.Fundamental.LongTermProvisionsBalanceSheet:
        """Provisions are created to protect the interests of one or both parties named in a contract or legal document which is a preparatory action or measure. Long-term provision is expired beyond one accounting period."""
        ...

    @property
    def RawMaterials(self) -> QuantConnect.Data.Fundamental.RawMaterialsBalanceSheet:
        """Carrying amount as of the balance sheet data of unprocessed items to be consumed in the manufacturing or production process. This item is available for manufacturing and mining industries."""
        ...

    @property
    def ReceivablesAdjustmentsAllowances(self) -> QuantConnect.Data.Fundamental.ReceivablesAdjustmentsAllowancesBalanceSheet:
        """A provision relating to a written agreement to receive money at a specified future date(s) (within one year from the reporting date or the normal operating cycle, whichever is longer), consisting of principal as well as any accrued interest)."""
        ...

    @property
    def RegulatoryAssets(self) -> QuantConnect.Data.Fundamental.RegulatoryAssetsBalanceSheet:
        """Carrying amount as of the balance sheet date of capitalized costs of regulated entities that are expected to be recovered through revenue sources over one year or beyond the normal operating cycle."""
        ...

    @property
    def RegulatoryLiabilities(self) -> QuantConnect.Data.Fundamental.RegulatoryLiabilitiesBalanceSheet:
        """The amount for the individual regulatory noncurrent liability as itemized in a table of regulatory noncurrent liabilities as of the end of the period. Such things as the costs of energy efficiency programs and low-income energy assistances programs and deferred fuel. This item is usually only available for utility industry."""
        ...

    @property
    def ReinsuranceBalancesPayable(self) -> QuantConnect.Data.Fundamental.ReinsuranceBalancesPayableBalanceSheet:
        """The carrying amount as of the balance sheet date of the known and estimated amounts owed to insurers under reinsurance treaties or other arrangements. This item is usually only available for insurance industry."""
        ...

    @property
    def RestrictedCash(self) -> QuantConnect.Data.Fundamental.RestrictedCashBalanceSheet:
        """The carrying amounts of cash and cash equivalent items, which are restricted as to withdrawal or usage. Restrictions may include legally restricted deposits held as compensating balances against short-term borrowing arrangements, contracts entered into with others, or entity statements of intention with regard to particular deposits; however, time deposits and short-term certificates of deposit are not generally included in legally restricted deposits. Excludes compensating balance arrangements that are not agreements, which legally restrict the use of cash amounts shown on the balance sheet. For a classified balance sheet, represents the current portion only (the non-current portion has a separate concept); for an unclassified balance sheet represents the entire amount. This item is usually not available for bank and insurance industries."""
        ...

    @property
    def RestrictedCashAndCashEquivalents(self) -> QuantConnect.Data.Fundamental.RestrictedCashAndCashEquivalentsBalanceSheet:
        """The carrying amounts of cash and cash equivalent items which are restricted as to withdrawal or usage. This item is available for bank and insurance industries."""
        ...

    @property
    def RestrictedCashAndInvestments(self) -> QuantConnect.Data.Fundamental.RestrictedCashAndInvestmentsBalanceSheet:
        """The cash and investments whose use in whole or in part is restricted for the long-term, generally by contractual agreements or regulatory requirements. This item is usually only available for bank industry."""
        ...

    @property
    def RestrictedCommonStock(self) -> QuantConnect.Data.Fundamental.RestrictedCommonStockBalanceSheet:
        """Shares of stock for which sale is contractually or governmentally restricted for a given period of time. Stock that is acquired through an employee stock option plan or other private means may not be transferred. Restricted stock must be traded in compliance with special SEC regulations."""
        ...

    @property
    def RestrictedInvestments(self) -> QuantConnect.Data.Fundamental.RestrictedInvestmentsBalanceSheet:
        """Investments whose use is restricted in whole or in part, generally by contractual agreements or regulatory requirements. This item is usually only available for bank industry."""
        ...

    @property
    def TaxesReceivable(self) -> QuantConnect.Data.Fundamental.TaxesReceivableBalanceSheet:
        """Carrying amount due within one year of the balance sheet date (or one operating cycle, if longer) from tax authorities as of the balance sheet date representing refunds of overpayments or recoveries based on agreed-upon resolutions of disputes. This item is usually not available for bank industry."""
        ...

    @property
    def TotalCapitalization(self) -> QuantConnect.Data.Fundamental.TotalCapitalizationBalanceSheet:
        """Stockholder's Equity plus Long Term Debt."""
        ...

    @property
    def TotalDeferredCreditsAndOtherNonCurrentLiabilities(self) -> QuantConnect.Data.Fundamental.TotalDeferredCreditsAndOtherNonCurrentLiabilitiesBalanceSheet:
        """Revenue received by a firm but not yet reported as income. This item is usually only available for utility industry."""
        ...

    @property
    def UnbilledReceivables(self) -> QuantConnect.Data.Fundamental.UnbilledReceivablesBalanceSheet:
        """Revenues that are not currently billed from the customer under the terms of the contract. This item is usually only available for utility industry."""
        ...

    @property
    def UnrealizedGainLoss(self) -> QuantConnect.Data.Fundamental.UnrealizedGainLossBalanceSheet:
        """A profit or loss that results from holding onto an asset rather than cashing it in and officially taking the profit or loss."""
        ...

    @property
    def WorkInProcess(self) -> QuantConnect.Data.Fundamental.WorkInProcessBalanceSheet:
        """Work, or goods, in the process of being fabricated or manufactured but not yet completed as finished goods. This item is usually available for manufacturing and mining industries."""
        ...

    @property
    def OtherNonCurrentLiabilities(self) -> QuantConnect.Data.Fundamental.OtherNonCurrentLiabilitiesBalanceSheet:
        """This item is usually not available for bank and insurance industries."""
        ...

    @property
    def CapitalLeaseObligations(self) -> QuantConnect.Data.Fundamental.CapitalLeaseObligationsBalanceSheet:
        """Current Portion of Capital Lease Obligation plus Long Term Portion of Capital Lease Obligation."""
        ...

    @property
    def OtherLiabilities(self) -> QuantConnect.Data.Fundamental.OtherLiabilitiesBalanceSheet:
        """This item is available for bank and insurance industries."""
        ...

    @property
    def OtherPayable(self) -> QuantConnect.Data.Fundamental.OtherPayableBalanceSheet:
        """Payables and Accrued Expenses that are not defined as Trade, Tax or Dividends related."""
        ...

    @property
    def TangibleBookValue(self) -> QuantConnect.Data.Fundamental.TangibleBookValueBalanceSheet:
        """The company's total book value less the value of any intangible assets. Methodology: Common Stock Equity minus Goodwill and Other Intangible Assets"""
        ...

    @property
    def TotalEquity(self) -> QuantConnect.Data.Fundamental.TotalEquityBalanceSheet:
        """Total Equity equals Preferred Stock Equity + Common Stock Equity."""
        ...

    @property
    def WorkingCapital(self) -> QuantConnect.Data.Fundamental.WorkingCapitalBalanceSheet:
        """Current Assets minus Current Liabilities. This item is usually not available for bank and insurance industries."""
        ...

    @property
    def TotalDebt(self) -> QuantConnect.Data.Fundamental.TotalDebtBalanceSheet:
        """All borrowings incurred by the company including debt and capital lease obligations."""
        ...

    @property
    def CommonUtilityPlant(self) -> QuantConnect.Data.Fundamental.CommonUtilityPlantBalanceSheet:
        """The amount for the other plant related to the utility industry fix assets."""
        ...

    @property
    def ElectricUtilityPlant(self) -> QuantConnect.Data.Fundamental.ElectricUtilityPlantBalanceSheet:
        """The amount for the electric plant related to the utility industry."""
        ...

    @property
    def NaturalGasFuelAndOther(self) -> QuantConnect.Data.Fundamental.NaturalGasFuelAndOtherBalanceSheet:
        """The amount for the natural gas, fuel and other items related to the utility industry, which might include oil and gas wells, the properties to exploit oil and gas or liquefied natural gas sites."""
        ...

    @property
    def NetUtilityPlant(self) -> QuantConnect.Data.Fundamental.NetUtilityPlantBalanceSheet:
        """Net utility plant might include water production, electric utility plan, natural gas, fuel and other, common utility plant and accumulated depreciation. This item is usually only available for utility industry."""
        ...

    @property
    def WaterProduction(self) -> QuantConnect.Data.Fundamental.WaterProductionBalanceSheet:
        """The amount for a facility and plant that provides water which might include wells, reservoirs, pumping stations, and control facilities; and waste water systems which includes the waste treatment and disposal facility and equipment. This item is usually only available for utility industry."""
        ...

    @property
    def OrdinarySharesNumber(self) -> QuantConnect.Data.Fundamental.OrdinarySharesNumberBalanceSheet:
        """Number of Common or Ordinary Shares."""
        ...

    @property
    def PreferredSharesNumber(self) -> QuantConnect.Data.Fundamental.PreferredSharesNumberBalanceSheet:
        """Number of Preferred Shares."""
        ...

    @property
    def TreasurySharesNumber(self) -> QuantConnect.Data.Fundamental.TreasurySharesNumberBalanceSheet:
        """Number of Treasury Shares."""
        ...

    @property
    def TradingAndOtherReceivable(self) -> QuantConnect.Data.Fundamental.TradingAndOtherReceivableBalanceSheet:
        """This will serve as the "parent" value to AccountsReceivable (DataId 23001) and OtherReceivables (DataId 23342) for all company financials reported in the IFRS GAAP."""
        ...

    @property
    def EquityAttributableToOwnersOfParent(self) -> QuantConnect.Data.Fundamental.EquityAttributableToOwnersOfParentBalanceSheet:
        """Morningstar DataId: 23400"""
        ...

    @property
    def SecuritiesLoaned(self) -> QuantConnect.Data.Fundamental.SecuritiesLoanedBalanceSheet:
        """The carrying value as of the balance sheet date of securities loaned to other broker dealers, typically used by such parties to cover short sales, secured by cash or other securities furnished by such parties until the borrowing is closed."""
        ...

    @property
    def NetTangibleAssets(self) -> QuantConnect.Data.Fundamental.NetTangibleAssetsBalanceSheet:
        """Net assets in physical form. This is calculated using Stockholders' Equity less Intangible Assets (including Goodwill)."""
        ...

    @property
    def DuefromRelatedPartiesCurrent(self) -> QuantConnect.Data.Fundamental.DuefromRelatedPartiesCurrentBalanceSheet:
        """Amounts owed to the company from a non-arm's length entity, due within the company's current operating cycle."""
        ...

    @property
    def DuefromRelatedPartiesNonCurrent(self) -> QuantConnect.Data.Fundamental.DuefromRelatedPartiesNonCurrentBalanceSheet:
        """Amounts owed to the company from a non-arm's length entity, due after the company's current operating cycle."""
        ...

    @property
    def DuetoRelatedParties(self) -> QuantConnect.Data.Fundamental.DuetoRelatedPartiesBalanceSheet:
        """Amounts owed by the company to a non-arm's length entity."""
        ...

    @property
    def DuetoRelatedPartiesCurrent(self) -> QuantConnect.Data.Fundamental.DuetoRelatedPartiesCurrentBalanceSheet:
        """Amounts owed by the company to a non-arm's length entity that has to be repaid within the company's current operating cycle."""
        ...

    @property
    def DuetoRelatedPartiesNonCurrent(self) -> QuantConnect.Data.Fundamental.DuetoRelatedPartiesNonCurrentBalanceSheet:
        """Amounts owed by the company to a non-arm's length entity that has to be repaid after the company's current operating cycle."""
        ...

    @property
    def InvestmentProperties(self) -> QuantConnect.Data.Fundamental.InvestmentPropertiesBalanceSheet:
        """Company's investments in properties net of accumulated depreciation, which generate a return."""
        ...

    @property
    def InvestmentsinSubsidiariesatCost(self) -> QuantConnect.Data.Fundamental.InvestmentsinSubsidiariesatCostBalanceSheet:
        """A stake in any company which is more than 51%."""
        ...

    @property
    def InvestmentsinAssociatesatCost(self) -> QuantConnect.Data.Fundamental.InvestmentsinAssociatesatCostBalanceSheet:
        """A stake in any company which is more than 20% but less than 50%."""
        ...

    @property
    def InvestmentsinJointVenturesatCost(self) -> QuantConnect.Data.Fundamental.InvestmentsinJointVenturesatCostBalanceSheet:
        """A 50% stake in any company in which remaining 50% belongs to other company."""
        ...

    @property
    def InvestmentinFinancialAssets(self) -> QuantConnect.Data.Fundamental.InvestmentinFinancialAssetsBalanceSheet:
        """Represents the sum of all financial investments (trading securities, available-for-sale securities, held-to-maturity securities, etc.)"""
        ...

    @property
    def FinanceLeaseReceivables(self) -> QuantConnect.Data.Fundamental.FinanceLeaseReceivablesBalanceSheet:
        """Accounts owed to the bank in relation to capital leases. Capital/ finance lease obligation are contractual obligations that arise from obtaining the use of property or equipment via a capital lease contract."""
        ...

    @property
    def ConvertibleLoansCurrent(self) -> QuantConnect.Data.Fundamental.ConvertibleLoansCurrentBalanceSheet:
        """This represents loans that entitle the lender (or the holder of loan debenture) to convert the loan to common or preferred stock (ordinary or preference shares) within the next 12 months or operating cycle."""
        ...

    @property
    def BankLoansCurrent(self) -> QuantConnect.Data.Fundamental.BankLoansCurrentBalanceSheet:
        """A debt financing obligation issued by a bank or similar financial institution to a company, that entitles the lender or holder of the instrument to interest payments and the repayment of principal at a specified time within the next 12 months or operating cycle."""
        ...

    @property
    def OtherLoansCurrent(self) -> QuantConnect.Data.Fundamental.OtherLoansCurrentBalanceSheet:
        """Other loans between the customer and bank which cannot be identified by other specific items in the Debt section, due within the next 12 months or operating cycle."""
        ...

    @property
    def AccruedandDeferredIncome(self) -> QuantConnect.Data.Fundamental.AccruedandDeferredIncomeBalanceSheet:
        """Sum of accrued liabilities and deferred income (amount received in advance but the services are not provided in respect of amount)."""
        ...

    @property
    def BankLoansNonCurrent(self) -> QuantConnect.Data.Fundamental.BankLoansNonCurrentBalanceSheet:
        """A debt financing obligation issued by a bank or similar financial institution to a company, that entitles the lender or holder of the instrument to interest payments and the repayment of principal at a specified time beyond the current accounting period."""
        ...

    @property
    def OtherLoansNonCurrent(self) -> QuantConnect.Data.Fundamental.OtherLoansNonCurrentBalanceSheet:
        """Other loans between the customer and bank which cannot be identified by other specific items in the Debt section, due beyond the current operating cycle."""
        ...

    @property
    def OtherReserves(self) -> QuantConnect.Data.Fundamental.OtherReservesBalanceSheet:
        """Other reserves owned by the company that cannot be identified by other specific items in the Reserves section."""
        ...

    @property
    def LoansandAdvancestoBank(self) -> QuantConnect.Data.Fundamental.LoansandAdvancestoBankBalanceSheet:
        """The aggregate amount of loans and advances made to a bank or financial institution."""
        ...

    @property
    def LoansandAdvancestoCustomer(self) -> QuantConnect.Data.Fundamental.LoansandAdvancestoCustomerBalanceSheet:
        """The aggregate amount of loans and advances made to customers."""
        ...

    @property
    def TreasuryBillsandOtherEligibleBills(self) -> QuantConnect.Data.Fundamental.TreasuryBillsandOtherEligibleBillsBalanceSheet:
        """Investments backed by the central government, it usually carries less risk than other investments."""
        ...

    @property
    def EquitySharesInvestments(self) -> QuantConnect.Data.Fundamental.EquitySharesInvestmentsBalanceSheet:
        """Investments in shares of a company representing ownership in that company."""
        ...

    @property
    def DepositsbyBank(self) -> QuantConnect.Data.Fundamental.DepositsbyBankBalanceSheet:
        """Banks investment in the ongoing entity."""
        ...

    @property
    def CustomerAccounts(self) -> QuantConnect.Data.Fundamental.CustomerAccountsBalanceSheet:
        """Carrying value of amounts transferred by customers to third parties for security purposes that are expected to be returned or applied towards payment after one year or beyond the operating cycle, if longer."""
        ...

    @property
    def ItemsinTheCourseofTransmissiontoOtherBanks(self) -> QuantConnect.Data.Fundamental.ItemsinTheCourseofTransmissiontoOtherBanksBalanceSheet:
        """Carrying amount as of the balance sheet date of drafts and bills of exchange that have been accepted by the reporting bank or by others for its own account, as its liability to holders of the drafts."""
        ...

    @property
    def TradingandFinancialLiabilities(self) -> QuantConnect.Data.Fundamental.TradingandFinancialLiabilitiesBalanceSheet:
        """Total carrying amount of total trading, financial liabilities and debt in a non-differentiated balance sheet."""
        ...

    @property
    def DebtSecuritiesinIssue(self) -> QuantConnect.Data.Fundamental.DebtSecuritiesinIssueBalanceSheet:
        """Any debt financial instrument issued instead of cash loan."""
        ...

    @property
    def SubordinatedLiabilities(self) -> QuantConnect.Data.Fundamental.SubordinatedLiabilitiesBalanceSheet:
        """The total carrying value of securities loaned to other broker dealers, typically used by such parties to cover short sales, secured by cash or other securities furnished by such parties until the borrowing is closed; in a Non-Differentiated Balance Sheet."""
        ...

    @property
    def ProvisionsTotal(self) -> QuantConnect.Data.Fundamental.ProvisionsTotalBalanceSheet:
        """Provisions are created to protect the interests of one or both parties named in a contract or legal document, which is a preparatory action or measure. Current provision is expired within one accounting period."""
        ...

    @property
    def OperatingLeaseAssets(self) -> QuantConnect.Data.Fundamental.OperatingLeaseAssetsBalanceSheet:
        """A contract that allows for the use of an asset, but does not convey rights of ownership of the asset. An operating lease is not capitalized; it is accounted for as a rental expense in what is known as "off balance sheet financing." For the lessor, the asset being leased is accounted for as an asset and is depreciated as such."""
        ...

    @property
    def ClaimsOutstanding(self) -> QuantConnect.Data.Fundamental.ClaimsOutstandingBalanceSheet:
        """Amounts owing to policy holders who have filed claims but have not yet been settled or paid."""
        ...

    @property
    def LiabilitiesHeldforSaleCurrent(self) -> QuantConnect.Data.Fundamental.LiabilitiesHeldforSaleCurrentBalanceSheet:
        """Liabilities due within the next 12 months related from an asset classified as Held for Sale."""
        ...

    @property
    def LiabilitiesHeldforSaleNonCurrent(self) -> QuantConnect.Data.Fundamental.LiabilitiesHeldforSaleNonCurrentBalanceSheet:
        """Liabilities related to an asset classified as held for sale excluding the portion due the next 12 months or operating cycle."""
        ...

    @property
    def DebtSecurities(self) -> QuantConnect.Data.Fundamental.DebtSecuritiesBalanceSheet:
        """Debt securities held as investments."""
        ...

    @property
    def TotalFinancialLeaseObligations(self) -> QuantConnect.Data.Fundamental.TotalFinancialLeaseObligationsBalanceSheet:
        """Represents the total amount of long-term capital leases that must be paid within the next accounting period for a Non- Differentiated Balance Sheet. Capital lease obligations are contractual obligations that arise from obtaining the use of property or equipment via a capital lease contract."""
        ...

    @property
    def AccruedandDeferredIncomeCurrent(self) -> QuantConnect.Data.Fundamental.AccruedandDeferredIncomeCurrentBalanceSheet:
        """Sum of Accrued Liabilities and Deferred Income (amount received in advance but the services are not provided in respect of amount) due within 1 year."""
        ...

    @property
    def AccruedandDeferredIncomeNonCurrent(self) -> QuantConnect.Data.Fundamental.AccruedandDeferredIncomeNonCurrentBalanceSheet:
        """Sum of Accrued Liabilities and Deferred Income (amount received in advance but the services are not provided in respect of amount) due after 1 year."""
        ...

    @property
    def FinanceLeaseReceivablesCurrent(self) -> QuantConnect.Data.Fundamental.FinanceLeaseReceivablesCurrentBalanceSheet:
        """Accounts owed to the bank in relation to capital leases to be received within the next accounting period. Capital/ finance lease obligations are contractual obligations that arise from obtaining the use of property or equipment via a capital lease contract."""
        ...

    @property
    def FinanceLeaseReceivablesNonCurrent(self) -> QuantConnect.Data.Fundamental.FinanceLeaseReceivablesNonCurrentBalanceSheet:
        """Accounts owed to the bank in relation to capital leases to be received beyond the next accounting period. Capital/ finance lease obligations are contractual obligations that arise from obtaining the use of property or equipment via a capital lease contract."""
        ...

    @property
    def FinancialLiabilitiesCurrent(self) -> QuantConnect.Data.Fundamental.FinancialLiabilitiesCurrentBalanceSheet:
        """Financial related liabilities due within one year, including short term and current portions of long-term debt, capital leases and derivative liabilities."""
        ...

    @property
    def FinancialLiabilitiesNonCurrent(self) -> QuantConnect.Data.Fundamental.FinancialLiabilitiesNonCurrentBalanceSheet:
        """Financial related liabilities due beyond one year, including long term debt, capital leases and derivative liabilities."""
        ...

    @property
    def FinancialAssetsDesignatedasFairValueThroughProfitorLossTotal(self) -> QuantConnect.Data.Fundamental.FinancialAssetsDesignatedasFairValueThroughProfitorLossTotalBalanceSheet:
        """Financial assets that are held at fair value through profit or loss comprise assets held for trading and those financial assets designated as being held at fair value through profit or loss."""
        ...

    @property
    def TaxesAssetsCurrent(self) -> QuantConnect.Data.Fundamental.TaxesAssetsCurrentBalanceSheet:
        """Carrying amount due within one year of the balance sheet date (or one operating cycle, if longer) from tax authorities as of the balance sheet date representing refunds of overpayments or recoveries based on agreed-upon resolutions of disputes, and current deferred tax assets."""
        ...

    @property
    def OtherEquityInterest(self) -> QuantConnect.Data.Fundamental.OtherEquityInterestBalanceSheet:
        """Other equity instruments issued by the company that cannot be identified by other specific items in the Equity section."""
        ...

    @property
    def InterestBearingBorrowingsNonCurrent(self) -> QuantConnect.Data.Fundamental.InterestBearingBorrowingsNonCurrentBalanceSheet:
        """Carrying amount of any interest-bearing loan which is due after one year."""
        ...

    @property
    def NonInterestBearingBorrowingsNonCurrent(self) -> QuantConnect.Data.Fundamental.NonInterestBearingBorrowingsNonCurrentBalanceSheet:
        """Non-interest bearing borrowings due after a year."""
        ...

    @property
    def TradeandOtherPayablesNonCurrent(self) -> QuantConnect.Data.Fundamental.TradeandOtherPayablesNonCurrentBalanceSheet:
        """Sum of all non-current payables and accrued expenses."""
        ...

    @property
    def NonInterestBearingBorrowingsCurrent(self) -> QuantConnect.Data.Fundamental.NonInterestBearingBorrowingsCurrentBalanceSheet:
        """Non-interest bearing deposits in other financial institutions for short periods of time, usually less than 12 months."""
        ...

    @property
    def PensionandOtherPostRetirementBenefitPlansCurrent(self) -> QuantConnect.Data.Fundamental.PensionandOtherPostRetirementBenefitPlansCurrentBalanceSheet:
        """Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits."""
        ...

    @property
    def OtherLoanAssets(self) -> QuantConnect.Data.Fundamental.OtherLoanAssetsBalanceSheet:
        """Reflects the carrying amount of any other unpaid loans, an asset of the bank."""
        ...

    @property
    def AssetsPledgedasCollateralSubjecttoSaleorRepledgingTotal(self) -> QuantConnect.Data.Fundamental.AssetsPledgedasCollateralSubjecttoSaleorRepledgingTotalBalanceSheet:
        """Total value collateral assets pledged to the bank that can be sold or used as collateral for other loans."""
        ...

    @property
    def TaxAssetsTotal(self) -> QuantConnect.Data.Fundamental.TaxAssetsTotalBalanceSheet:
        """Sum of total tax assets in a Non-Differentiated Balance Sheet, includes Tax Receivables and Deferred Tax Assets."""
        ...

    @property
    def AdvancesfromCentralBanks(self) -> QuantConnect.Data.Fundamental.AdvancesfromCentralBanksBalanceSheet:
        """Borrowings from the central bank, which are primarily used to cover shortages in the required reserve balance and liquidity shortages."""
        ...

    @property
    def DepositCertificates(self) -> QuantConnect.Data.Fundamental.DepositCertificatesBalanceSheet:
        """A savings certificate entitling the bearer to receive interest. A CD bears a maturity date, a specified fixed interest rate and can be issued in any denomination."""
        ...

    @property
    def NonInterestBearingBorrowingsTotal(self) -> QuantConnect.Data.Fundamental.NonInterestBearingBorrowingsTotalBalanceSheet:
        """Non-interest bearing deposits in other financial institutions for relatively short periods of time; on a Non-Differentiated Balance Sheet."""
        ...

    @property
    def OtherBorrowedFunds(self) -> QuantConnect.Data.Fundamental.OtherBorrowedFundsBalanceSheet:
        """Other borrowings by the bank to fund its activities that cannot be identified by other specific items in the Liabilities section."""
        ...

    @property
    def FinancialLiabilitiesDesignatedasFairValueThroughProfitorLossTotal(self) -> QuantConnect.Data.Fundamental.FinancialLiabilitiesDesignatedasFairValueThroughProfitorLossTotalBalanceSheet:
        """Financial liabilities that are held at fair value through profit or loss."""
        ...

    @property
    def FinancialLiabilitiesMeasuredatAmortizedCostTotal(self) -> QuantConnect.Data.Fundamental.FinancialLiabilitiesMeasuredatAmortizedCostTotalBalanceSheet:
        """Financial liabilities carried at amortized cost."""
        ...

    @property
    def AccruedLiabilitiesTotal(self) -> QuantConnect.Data.Fundamental.AccruedLiabilitiesTotalBalanceSheet:
        """Liabilities which have occurred, but have not been paid or logged under accounts payable during an accounting period. In other words, obligations for goods and services provided to a company for which invoices have not yet been received; on a Non- Differentiated Balance Sheet."""
        ...

    @property
    def DeferredIncomeTotal(self) -> QuantConnect.Data.Fundamental.DeferredIncomeTotalBalanceSheet:
        """Collections of cash or other assets related to revenue producing activity for which revenue has not yet been recognized on a Non- Differentiated Balance Sheet."""
        ...

    @property
    def DeferredTaxLiabilitiesTotal(self) -> QuantConnect.Data.Fundamental.DeferredTaxLiabilitiesTotalBalanceSheet:
        """A future tax liability, resulting from temporary differences between book (accounting) value of assets and liabilities and their tax value or timing differences between the recognition of gains and losses in financial statements, on a Non-Differentiated Balance Sheet."""
        ...

    @property
    def ReinsuranceAssets(self) -> QuantConnect.Data.Fundamental.ReinsuranceAssetsBalanceSheet:
        """Reinsurance asset is insurance that is purchased by an insurance company from another insurance company."""
        ...

    @property
    def DepositsMadeunderAssumedReinsuranceContract(self) -> QuantConnect.Data.Fundamental.DepositsMadeunderAssumedReinsuranceContractBalanceSheet:
        """Deposits made under reinsurance."""
        ...

    @property
    def InsuranceContractAssets(self) -> QuantConnect.Data.Fundamental.InsuranceContractAssetsBalanceSheet:
        """A contract under which one party (the insurer) accepts significant insurance risk from another party (the policyholder) by agreeing to compensate the policyholder if a specified uncertain future event (the insured event) adversely affects the policyholder. This includes Insurance Receivables and Premiums Receivables."""
        ...

    @property
    def InsuranceContractLiabilities(self) -> QuantConnect.Data.Fundamental.InsuranceContractLiabilitiesBalanceSheet:
        """Any type of insurance policy that protects an individual or business from the risk that they may be sued and held legally liable for something such as malpractice, injury or negligence. Liability insurance policies cover both legal costs and any legal payouts for which the insured would be responsible if found legally liable. Intentional damage and contractual liabilities are typically not covered in these types of policies."""
        ...

    @property
    def DepositsReceivedunderCededInsuranceContract(self) -> QuantConnect.Data.Fundamental.DepositsReceivedunderCededInsuranceContractBalanceSheet:
        """Deposit received through ceded insurance contract."""
        ...

    @property
    def InvestmentContractLiabilities(self) -> QuantConnect.Data.Fundamental.InvestmentContractLiabilitiesBalanceSheet:
        """Liabilities due on the insurance investment contract."""
        ...

    @property
    def PensionAndOtherPostretirementBenefitPlansTotal(self) -> QuantConnect.Data.Fundamental.PensionAndOtherPostretirementBenefitPlansTotalBalanceSheet:
        """Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."""
        ...

    @property
    def LiabilitiesHeldforSaleTotal(self) -> QuantConnect.Data.Fundamental.LiabilitiesHeldforSaleTotalBalanceSheet:
        """Liabilities related to an asset classified as held for sale."""
        ...

    @property
    def HedgingAssetsCurrent(self) -> QuantConnect.Data.Fundamental.HedgingAssetsCurrentBalanceSheet:
        """A security transaction which expires within a 12 month period that reduces the risk on an existing investment position."""
        ...

    @property
    def ConvertibleLoansTotal(self) -> QuantConnect.Data.Fundamental.ConvertibleLoansTotalBalanceSheet:
        """Loans that entitles the lender (or the holder of loan debenture) to convert the loan to common or preferred stock (ordinary or preference shares) at a specified rate conversion rate and a specified time frame; in a Non-Differentiated Balance Sheet."""
        ...

    @property
    def BankLoansTotal(self) -> QuantConnect.Data.Fundamental.BankLoansTotalBalanceSheet:
        """Total debt financing obligation issued by a bank or similar financial institution to a company that entitles the lender or holder of the instrument to interest payments and the repayment of principal at a specified time; in a Non-Differentiated Balance Sheet."""
        ...

    @property
    def OtherLoansTotal(self) -> QuantConnect.Data.Fundamental.OtherLoansTotalBalanceSheet:
        """Total other loans between the customer and bank which cannot be identified by other specific items in the Debt section; in a Non- Differentiated Balance Sheet."""
        ...

    @property
    def InsuranceFundsNonCurrent(self) -> QuantConnect.Data.Fundamental.InsuranceFundsNonCurrentBalanceSheet:
        """Liabilities related to insurance funds that are dissolved after one year."""
        ...

    @property
    def DebtTotal(self) -> QuantConnect.Data.Fundamental.DebtTotalBalanceSheet:
        """The total aggregate of all written promises and/or agreements to repay a stated amount of borrowed funds at a specified date in the future; in a Non-Differentiated Balance Sheet."""
        ...

    @property
    def ComTreShaNum(self) -> QuantConnect.Data.Fundamental.ComTreShaNumBalanceSheet:
        """The treasury stock number of common shares. This represents the number of common shares owned by the company as a result of share repurchase programs or donations."""
        ...

    @property
    def PreTreShaNum(self) -> QuantConnect.Data.Fundamental.PreTreShaNumBalanceSheet:
        """The treasury stock number of preferred shares. This represents the number of preferred shares owned by the company as a result of share repurchase programs or donations."""
        ...

    @property
    def NetDebt(self) -> QuantConnect.Data.Fundamental.NetDebtBalanceSheet:
        """This is a metric that shows a company's overall debt situation by netting the value of a company's liabilities and debts with its cash and other similar liquid assets. It is calculated using [Current Debt] + [Long Term Debt] - [Cash and Cash Equivalents]."""
        ...

    @property
    def ShareIssued(self) -> QuantConnect.Data.Fundamental.ShareIssuedBalanceSheet:
        """The number of authorized shares that is sold to and held by the shareholders of a company, regardless of whether they are insiders, institutional investors or the general public. Unlike shares that are held as treasury stock, shares that have been retired are not included in this figure. The amount of issued shares can be all or part of the total amount of authorized shares of a corporation."""
        ...

    @property
    def AssetsHeldForSaleCurrent(self) -> QuantConnect.Data.Fundamental.AssetsHeldForSaleCurrentBalanceSheet:
        """Short term assets set apart for sale to liquidate in the future and are measured at the lower of carrying amount and fair value less costs to sell."""
        ...

    @property
    def AssetsHeldForSaleNonCurrent(self) -> QuantConnect.Data.Fundamental.AssetsHeldForSaleNonCurrentBalanceSheet:
        """Long term assets set apart for sale to liquidate in the future and are measured at the lower of carrying amount and fair value less costs to sell."""
        ...

    @property
    def BiologicalAssets(self) -> QuantConnect.Data.Fundamental.BiologicalAssetsBalanceSheet:
        """Biological assets include plants and animals."""
        ...

    @property
    def CashRestrictedOrPledged(self) -> QuantConnect.Data.Fundamental.CashRestrictedOrPledgedBalanceSheet:
        """Cash that the company can use only for specific purposes or cash deposit or placing of owned property by a debtor (the pledger) to a creditor (the pledgee) as a security for a loan or obligation."""
        ...

    @property
    def ConvertibleLoansNonCurrent(self) -> QuantConnect.Data.Fundamental.ConvertibleLoansNonCurrentBalanceSheet:
        """A long term loan with a warrant attached that gives the debt holder the option to exchange all or a portion of the loan principal for an equity position in the company at a predetermined rate of conversion within a specified period of time."""
        ...

    @property
    def FinancialOrDerivativeInvestmentCurrentLiabilities(self) -> QuantConnect.Data.Fundamental.FinancialOrDerivativeInvestmentCurrentLiabilitiesBalanceSheet:
        """Financial instruments that are linked to a specific financial instrument or indicator or commodity, and through which specific financial risks can be traded in financial markets in their own right, such as financial options, futures, forwards, etc."""
        ...

    @property
    def OtherInvestments(self) -> QuantConnect.Data.Fundamental.OtherInvestmentsBalanceSheet:
        """Investments that are neither Investment in Financial Assets nor Long term equity investment, not expected to be cashed within a year."""
        ...

    @property
    def TradeAndOtherReceivablesNonCurrent(self) -> QuantConnect.Data.Fundamental.TradeAndOtherReceivablesNonCurrentBalanceSheet:
        """Amounts due from customers or clients, more than one year from the balance sheet date, for goods or services that have been delivered or sold in the normal course of business, or other receivables."""
        ...

    @property
    def DueFromRelatedParties(self) -> QuantConnect.Data.Fundamental.DueFromRelatedPartiesBalanceSheet:
        """For an unclassified balance sheet, carrying amount as of the balance sheet date of obligations due all related parties."""
        ...

    @property
    def UnallocatedSurplus(self) -> QuantConnect.Data.Fundamental.UnallocatedSurplusBalanceSheet:
        """The amount of surplus from insurance contracts which has not been allocated at the balance sheet date. This is represented as a liability to policyholders, as it pertains to cumulative income arising from the with-profits business."""
        ...

    @property
    def DebtDueInYear1(self) -> QuantConnect.Data.Fundamental.DebtDueInYear1BalanceSheet:
        """Debt due under 1 year according to the debt maturity schedule reported by the company."""
        ...

    @property
    def DebtDueInYear2(self) -> QuantConnect.Data.Fundamental.DebtDueInYear2BalanceSheet:
        """Debt due under 2 years according to the debt maturity schedule reported by the company."""
        ...

    @property
    def DebtDueInYear5(self) -> QuantConnect.Data.Fundamental.DebtDueInYear5BalanceSheet:
        """Debt due within 5 year if the company provide maturity schedule in range e.g. 1-5 years, 2-5 years. Debt due under 5 years according to the debt maturity schedule reported by the company. If a range is reported by the company, the value will be collected under the maximum number of years (eg. 1-5 years, 3-5 years or 5 years will all be collected under this data point.)"""
        ...

    @property
    def DebtDueBeyond(self) -> QuantConnect.Data.Fundamental.DebtDueBeyondBalanceSheet:
        """Debt maturing beyond 5 years (eg. 5-10 years) or with no specified maturity, according to the debt maturity schedule reported by the company."""
        ...

    @property
    def TotalDebtInMaturitySchedule(self) -> QuantConnect.Data.Fundamental.TotalDebtInMaturityScheduleBalanceSheet:
        """Total Debt in Maturity Schedule is the sum of Debt details above."""
        ...

    @property
    def FixedAssetsRevaluationReserve(self) -> QuantConnect.Data.Fundamental.FixedAssetsRevaluationReserveBalanceSheet:
        """Reserves created by revaluation of assets."""
        ...

    @property
    def CurrentOtherFinancialLiabilities(self) -> QuantConnect.Data.Fundamental.CurrentOtherFinancialLiabilitiesBalanceSheet:
        """Other short term financial liabilities not categorized and due within one year or a normal operating cycle (whichever is longer)."""
        ...

    @property
    def NonCurrentOtherFinancialLiabilities(self) -> QuantConnect.Data.Fundamental.NonCurrentOtherFinancialLiabilitiesBalanceSheet:
        """Other long term financial liabilities not categorized and due over one year or a normal operating cycle (whichever is longer)."""
        ...

    @property
    def OtherFinancialLiabilities(self) -> QuantConnect.Data.Fundamental.OtherFinancialLiabilitiesBalanceSheet:
        """Other financial liabilities not categorized."""
        ...

    @property
    def TotalLiabilitiesAsReported(self) -> QuantConnect.Data.Fundamental.TotalLiabilitiesAsReportedBalanceSheet:
        """Total liabilities as reported by the company, may be the same or not the same as Morningstar's standardized definition."""
        ...

    @property
    def TotalEquityAsReported(self) -> QuantConnect.Data.Fundamental.TotalEquityAsReportedBalanceSheet:
        """Total Equity as reported by the company, may be the same or not the same as Morningstar's standardized definition."""
        ...

    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...


class CashFlowFileDate(QuantConnect.Data.Fundamental.MultiPeriodField[datetime.datetime]):
    """Filing date of the Cash Flow Statement."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> datetime.datetime:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> datetime.datetime:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> datetime.datetime:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> datetime.datetime:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> datetime.datetime:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> datetime.datetime:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> datetime.datetime:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> datetime.datetime:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, datetime.datetime]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AmortizationCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The systematic and rational apportionment of the acquisition cost of intangible operational assets to future periods in which the benefits contribute to revenue. This field is to include Amortization and any variation where Amortization is the first account listed in the line item, excluding Amortization of Intangibles."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CapitalExpenditureCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Funds used by a company to acquire or upgrade physical assets such as property, industrial buildings or equipment. This type of outlay is made by companies to maintain or increase the scope of their operations. Capital expenditures are generally depreciated or depleted over their useful life, as distinguished from repairs, which are subtracted from the income of the current year."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashDividendsPaidCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Payments for the cash dividends declared by an entity to shareholders during the PeriodAsByte. This element includes paid and unpaid dividends declared during the period for both common and preferred stock."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashFlowFromContinuingFinancingActivitiesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash generated by or used in financing activities of continuing operations; excludes cash flows from discontinued operations."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashFlowFromContinuingInvestingActivitiesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash generated by or used in investing activities of continuing operations; excludes cash flows from discontinued operations."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashFlowFromContinuingOperatingActivitiesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash generated by or used in operating activities of continuing operations; excludes cash flows from discontinued operations."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashFlowFromDiscontinuedOperationCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The aggregate amount of cash flow from discontinued operation, including operating activities, investing activities, and financing activities."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FinancingCashFlowCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The net cash inflow (outflow) from financing activity for the period, which involve changes to the long-term liabilities and stockholders' equity."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InvestingCashFlowCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """An item on the cash flow statement that reports the aggregate change in a company's cash position resulting from any gains (or losses) from investments in the financial markets and operating subsidiaries, and changes resulting from amounts spent on investments in capital assets such as plant and equipment."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OperatingCashFlowCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The net cash from (used in) all of the entity's operating activities, including those of discontinued operations, of the reporting entity. Operating activities include all transactions and events that are not defined as investing or financing activities. Operating activities generally involve producing and delivering goods and providing services. Cash flows from operating activities are generally the cash effects of transactions and other events that enter into the determination of net income."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class BeginningCashPositionCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The cash and equivalents balance at the beginning of the accounting period, as indicated on the Cash Flow statement."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class EndCashPositionCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The cash and cash equivalents balance at the end of the accounting period, as indicated on the Cash Flow statement. It is equal to the Beginning Cash and Equivalents, plus the Net Change in Cash and Equivalents."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashFromDiscontinuedFinancingActivitiesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash generated by or used in financing activities of discontinued operations; excludes cash flows from continued operations."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashFromDiscontinuedInvestingActivitiesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The net cash inflow (outflow) from discontinued investing activities over the designated time PeriodAsByte."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeInAccountPayableCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of the account payables."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeInTaxPayableCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of the tax payables."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeInAccruedExpenseCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of the accrued expenses."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeInAccruedInvestmentIncomeCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The net change during the reporting period in investment income that has been earned but not yet received in cash."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangesInCashCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The net change between the beginning and ending balance of cash and cash equivalents."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeInDeferredAcquisitionCostsCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The change of the unamortized portion as of the balance sheet date of capitalized costs that vary with and are primarily related to the acquisition of new and renewal insurance contracts."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeInFederalFundsAndSecuritiesSoldForRepurchaseCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The amount shown on the books that a bank with insufficient reserves borrows, at the federal funds rate, from another bank to meet its reserve requirements and the amount of securities that an institution sells and agrees to repurchase at a specified date for a specified price, net of any reductions or offsets."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeInFundsWithheldCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The net change during the reporting period associated with funds withheld."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeInIncomeTaxPayableCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of the income tax payables."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeInInterestPayableCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of the interest payable. Interest payable means carrying value as of the balance sheet date of interest payable on all forms of debt."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeInInventoryCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of the Inventories. Inventories represent merchandise bought for resale and supplies and raw materials purchased for use in revenue producing operations."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeInLoansCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The net change that a lender gives money or property to a borrower and the borrower agrees to return the property or repay the borrowed money, along with interest, at a predetermined date in the future."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeInLossAndLossAdjustmentExpenseReservesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The net change during the reporting period in the reserve account established to account for expected but unspecified losses."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeInPayableCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of the payables."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeInPayablesAndAccruedExpenseCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of the payables and accrued expenses. Accrued expenses represent expenses incurred at the end of the reporting period but not yet paid; also called accrued liabilities. The accrued liability is shown under current liabilities in the balance sheet."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeInPrepaidAssetsCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of the prepaid assets."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeInReceivablesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of the receivables. Receivables are amounts due to be paid to the company from clients and other."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeInReinsuranceRecoverableOnPaidAndUnpaidLossesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The net change during the reporting period in the amount of benefits the ceding insurer expects to recover on insurance policies ceded to other insurance entities as of the balance sheet date for all guaranteed benefit types."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeInRestrictedCashCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The net cash inflow (outflow) for the net change associated with funds that are not available for withdrawal or use (such as funds held in escrow)."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeInTradingAccountSecuritiesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The net change during the reporting period associated with trading account assets. Trading account assets are bought and held principally for the purpose of selling them in the near term (thus held for only a short period of time). Unrealized holding gains and losses for trading securities are included in earnings."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeInWorkingCapitalCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of the working capital. Working Capital is the amount left to the company to finance operations and expansion after current liabilities have been covered."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DeferredIncomeTaxCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The component of income tax expense for the period representing the net change in the entities deferred tax assets and liabilities pertaining to continuing operations."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DeferredTaxCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Future tax liability or asset, resulting from temporary differences between book (accounting) value of assets and liabilities, and their tax value. This arises due to differences between financial accounting for shareholders and tax accounting."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DepletionCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Unlike depreciation and amortization, which mainly describe the deduction of expenses due to the aging of equipment and property, depletion is the actual physical reduction of natural resources by companies. For example, coalmines, oil fields and other natural resources are depleted on company accounting statements. This reduction in the quantity of resources is meant to assist in accurately identifying the value of the asset on the balance sheet."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DepreciationCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """An expense recorded to allocate a tangible asset's cost over its useful life. Since it is a non-cash expense, it increases free cash flow while decreasing reported earnings."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DepreciationAndAmortizationCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The current period expense charged against earnings on long-lived, physical assets used in the normal conduct of business and not intended for resale to allocate or recognize the cost of assets over their useful lives; or to record the reduction in book value of an intangible asset over the benefit period of such asset."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DepreciationAmortizationDepletionCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """It is a non cash charge that represents a reduction in the value of fixed assets due to wear, age or obsolescence. This figure also includes amortization of leased property, intangibles, and goodwill, and depletion. This non-cash item is an add-back to the cash flow statement."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class EffectOfExchangeRateChangesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The effect of exchange rate changes on cash balances held in foreign currencies."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class IncreaseDecreaseInDepositCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The aggregate net change during the reporting period in moneys given as security, collateral, or margin deposits."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetCommonStockIssuanceCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of common stock."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetIssuancePaymentsOfDebtCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of debt."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetLongTermDebtIssuanceCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of long term debt. Long term debt includes notes payable, bonds payable, mortgage loans, convertible debt, subordinated debt and other types of long term debt."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetPreferredStockIssuanceCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of preferred stock."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetShortTermDebtIssuanceCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of short term debt."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetCashFromDiscontinuedOperationsCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The net cash from (used in) all of the entity's discontinued operating activities, excluding those of continued operations, of the reporting entity."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetForeignCurrencyExchangeGainLossCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The aggregate amount of realized and unrealized gain or loss resulting from changes in exchange rates between currencies. (Excludes foreign currency transactions designated as hedges of net investment in a foreign entity and inter-company foreign currency transactions that are of a long-term nature, when the entities to the transaction are consolidated, combined, or accounted for by the equity method in the reporting entity's financial statements. For certain entities, primarily banks, which are dealers in foreign exchange, foreign currency transaction gains or losses, may be disclosed as dealer gains or losses.)"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetIncomeFromContinuingOperationsCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Revenue less expenses and taxes from the entity's ongoing operations and before income (loss) from discontinued operations, extraordinary items, impact of changes in accounting principles, minority interest, and various other reconciling adjustments; represents the starting line for Operating Cash Flow."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PaymentForLoansCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Payment from a bank or insurance company to the lender who lends money or property based on the agreement, along with interest, at a predetermined date in the future."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CommonStockPaymentsCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The cash outflow to reacquire common stock during the PeriodAsByte."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PreferredStockPaymentsCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The cash outflow to reacquire preferred stock during the PeriodAsByte."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class LongTermDebtPaymentsCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The cash outflow for debt initially having maturity due after one year or beyond the normal operating cycle, if longer."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ShortTermDebtPaymentsCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The cash outflow for a borrowing having initial term of repayment within one year or the normal operating cycle, if longer."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ProceedsFromLoansCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The cash inflow from borrowing money or property for a bank or insurance company."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ProceedsFromStockOptionExercisedCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The cash inflow associated with the amount received from holders exercising their stock options."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CommonStockIssuanceCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The cash inflow from offering common stock, which is the additional capital contribution to the entity during the PeriodAsByte."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class LongTermDebtIssuanceCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The cash inflow from a debt initially having maturity due after one year or beyond the operating cycle, if longer."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PreferredStockIssuanceCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The cash inflow from offering preferred stock."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ShortTermDebtIssuanceCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The cash inflow from a debt initially having maturity due within one year or the normal operating cycle, if longer."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetProceedsPaymentForLoanCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The net value of proceeds or payments of loans."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ProceedsPaymentInInterestBearingDepositsInBankCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The net change on interest-bearing deposits in other financial institutions for relatively short periods of time including, for example, certificates of deposits."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PurchaseOfIntangiblesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The amount of capital outlays undertaken to increase, construct or improve intangible assets."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PurchaseOfInvestmentCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """All purchases of investments, including both long term and short term."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PurchaseOfPPECashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The amount of capital outlays undertaken to increase, construct or improve capital assets. This category includes property, plant equipment, furniture, fixed assets, buildings, and improvement."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PurchaseOfBusinessCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """All the purchases of business including business acquisitions, investment in subsidiary; investing in affiliated companies, and join venture."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetBusinessPurchaseAndSaleCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The net change between Purchases/Sales of Business."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetIntangiblesPurchaseAndSaleCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The net change between Purchases/Sales of Intangibles."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetInvestmentPurchaseAndSaleCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The net change between Purchases/Sales of Investments."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetPPEPurchaseAndSaleCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The net change between Purchases/Sales of PPE."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class SaleOfBusinessCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Proceeds received from selling a business including proceeds from a subsidiary, and proceeds from an affiliated company."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class SaleOfIntangiblesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The amount of capital inflow from the sale of all kinds of intangible assets."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class SaleOfInvestmentCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Proceeds received from selling all kind of investments, including both long term and short term."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class SaleOfPPECashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Proceeds from selling any fixed assets such as property, plant and equipment, which also includes retirement of equipment."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangesInAccountReceivablesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of the accounts receivables."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AmortizationOfFinancingCostsAndDiscountsCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The component of interest expense representing the non-cash expenses charged against earnings in the period to allocate debt discount and premium, and the costs to issue debt and obtain financing over the related debt instruments. This item is usually only available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AmortizationOfSecuritiesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Represents amortization of the allocation of a lump sum amount to different time periods, particularly for securities, debt, loans, and other forms of financing. Does not include amortization, amortization of capital expenditure and intangible assets."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AssetImpairmentChargeCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The charge against earnings resulting from the aggregate write down of all assets from their carrying value to their fair value."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeInDividendPayableCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of the dividend payables."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeInDeferredChargesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The net change during the reporting period in the value of expenditures made during the current reporting period for benefits that will be received over a period of years. This item is usually only available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeInOtherCurrentAssetsCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of the Other Current Assets. This category typically includes prepayments, deferred charges, and amounts (other than trade accounts) due from parents and subsidiaries."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeInOtherCurrentLiabilitiesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of the Other Current liabilities. Other Current liabilities is a balance sheet entry used by companies to group together current liabilities that are not assigned to common liabilities such as debt obligations or accounts payable."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeInOtherWorkingCapitalCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of the other working capital."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeInUnearnedPremiumsCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The change during the period in the unearned portion of premiums written, excluding the portion amortized into income. This item is usually only available for insurance industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CommonStockDividendPaidCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The cash outflow from the distribution of an entity's earnings in the form of dividends to common shareholders."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class EarningsLossesFromEquityInvestmentsCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This item represents the entity's proportionate share for the period of the net income (loss) of its investee (such as unconsolidated subsidiaries and joint ventures) to which the equity method of accounting is applied. The amount typically reflects adjustments."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ExcessTaxBenefitFromStockBasedCompensationCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Reductions in the entity's income taxes that arise when compensation cost (from non-qualified share-based compensation) recognized on the entities tax return exceeds compensation cost from share-based compensation recognized in financial statements. This element reduces net cash provided by operating activities."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class GainLossOnInvestmentSecuritiesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This item represents the net total realized gain (loss) included in earnings for the period as a result of selling or holding marketable securities categorized as trading, available-for-sale, or held-to-maturity, including the unrealized holding gain or loss of held-to- maturity securities transferred to the trading security category and the cumulative unrealized gain or loss which was included in other comprehensive income (a separate component of shareholders' equity) for available-for-sale securities transferred to trading securities during the PeriodAsByte. Additionally, this item would include any losses recognized for other than temporary impairments of the subject investments in debt and equity securities."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class GainLossOnSaleOfBusinessCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The difference between the sale price or salvage price and the book value of an asset that was sold or retired during the reporting PeriodAsByte. This element refers to the gain (loss) and not to the cash proceeds of the business. This element is a non-cash adjustment to net income when calculating net cash generated by operating activities using the indirect method."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class GainLossOnSaleOfPPECashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The difference between the sale price or salvage price and the book value of the property, plant and equipment that was sold or retired during the reporting PeriodAsByte. Includes the amount received from selling any fixed assets such as property, plant and equipment. Usually this section also includes any retirement of equipment. Such as Sale of business segments; Sale of credit and receivables; Property disposition; Proceeds from sale or disposition of business or investment; Decrease in excess of purchase price over acquired net assets; Abandoned project (expenditures) credit; Allowances for other funds during construction."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InterestCreditedOnPolicyholderDepositsCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """An expense reported in the income statement and needs to be removed from net income to arrive at cash provided by (used in) operations to the extent that such interest has not been paid. This item is usually only available for insurance industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashFromDiscontinuedOperatingActivitiesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The net cash from (used in) all of the entity's discontinued operating activities, excluding those of continued operations, of the reporting entity."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OperatingGainsLossesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The gain or loss from the entity's ongoing operations."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetOtherFinancingChargesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Miscellaneous charges incurred due to Financing activities."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetOtherInvestingChangesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Miscellaneous charges incurred due to Investing activities."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherNonCashItemsCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Items which adjusted back from net income but without real cash outflow or inflow."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PensionAndEmployeeBenefitExpenseCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The amount of pension and other (such as medical, dental and life insurance) postretirement benefit costs recognized during the PeriodAsByte."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PreferredStockDividendPaidCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Pay for the amount of dividends declared or paid in the period to preferred shareholders or the amount for which the obligation to pay them dividends rose in the PeriodAsByte."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ProceedsPaymentFederalFundsSoldAndSecuritiesPurchasedUnderAgreementToResellCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The aggregate amount change of (1) the lending of excess federal funds to another commercial bank requiring such for its legal reserve requirements and (2) securities purchased under agreements to resell. This item is usually only available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ProvisionForLoanLeaseAndOtherLossesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The sum of the periodic provision charged to earnings, based on an assessment of uncollectible from the counterparty on account of loan, lease or other credit losses, to reduce these accounts to the amount that approximates their net realizable value. This item is usually only available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class RealizedGainLossOnSaleOfLoansAndLeaseCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The gains and losses included in earnings that represent the difference between the sale price and the carrying value of loans and leases that were sold during the reporting PeriodAsByte. This element refers to the gain (loss) and not to the cash proceeds of the sales. This element is a non-cash adjustment to net income when calculating net cash generated by operating activities using the indirect method. This item is usually only available for bank industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class StockBasedCompensationCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Value of stock issued during the period as a result of any share-based compensation plan other than an employee stock ownership plan (ESOP)."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class UnrealizedGainLossOnInvestmentSecuritiesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increases (decreases) in the market value of unsold securities whose gains (losses) were included in earnings."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class UnrealizedGainsLossesOnDerivativesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The gross gains and losses on derivatives. This item is usually only available for insurance industry."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AmortizationOfIntangiblesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class IncomeTaxPaidSupplementalDataCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The amount of cash paid during the current period to foreign, federal state and local authorities as taxes on income."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InterestPaidSupplementalDataCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The amount of cash paid during the current period for interest owed on money borrowed; including amount of interest capitalized."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class IssuanceOfCapitalStockCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The cash inflow from offering common stock, which is the additional capital contribution to the entity during the PeriodAsByte."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class IssuanceOfDebtCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The cash inflow due to an increase in long term debt."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class RepaymentOfDebtCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Payments to Settle Long Term Debt plus Payments to Settle Short Term Debt."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class RepurchaseOfCapitalStockCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Payments for Common Stock plus Payments for Preferred Stock."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FreeCashFlowCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash Flow Operations minus Capital Expenditures."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DecreaseinInterestBearingDepositsinBankCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The net change on interest-bearing deposits in other financial institutions for relatively short periods of time including, for example, certificates of deposits."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class IncreaseinInterestBearingDepositsinBankCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Increase in interest-bearing deposits in bank."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InterestReceivedCFOCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Interest received by the company, in the Operating Cash Flow section."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InterestPaidCFOCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Interest paid on loans, debt or borrowings, in the Operating Cash Flow section."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PurchaseofSubsidiariesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Purchase of subsidiaries or interest in subsidiaries (investments 51% and above)."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PurchaseofJointVentureAssociateCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Purchase of joint venture/associates (investment below 50%)."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class SaleofSubsidiariesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash inflow from the disposal of any subsidiaries."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class SaleofJointVentureAssociateCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash inflow from the disposal of joint venture/associates (investment below 50%)."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class IncreaseDecreaseinLeaseFinancingCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Change in cash flow resulting from increase/decrease in lease financing."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class IncreaseinLeaseFinancingCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The cash inflow from increase in lease financing."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class RepaymentinLeaseFinancingCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The cash outflow to repay lease financing during the PeriodAsByte."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ShareofAssociatesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A non-cash adjustment for share of associates' income in respect of operating activities."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ProfitonDisposalsCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The difference between the sale price or salvage price and the book value of an asset that was sold or retired during the reporting PeriodAsByte."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ReorganizationOtherCostsCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A non-cash adjustment relating to restructuring costs."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetOutwardLoansCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Adjustments due to net loans to/from outsiders in the Investing Cash Flow section."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class IssueExpensesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cost associated with issuance of debt/equity capital in the Financing Cash Flow section."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeinDepositsbyBanksandCustomersCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of the deposits by banks and customers."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashFlowsfromusedinOperatingActivitiesDirectCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The net cash from (used in) all of the entity's operating activities, including those of discontinued operations, of the reporting entity under the direct method."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ClassesofCashReceiptsfromOperatingActivitiesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Sum of total cash receipts in the direct cash flow."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherCashReceiptsfromOperatingActivitiesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Other cash receipts for the direct cash flow."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ClassesofCashPaymentsCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Sum of total cash payment in the direct cash flow."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PaymentstoSuppliersforGoodsandServicesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash paid to suppliers when purchasing goods or services by the company, in the direct cash flow."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PaymentsonBehalfofEmployeesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash paid in a form of salaries or other benefits to employees of the company, in the direct cash flow."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherCashPaymentsfromOperatingActivitiesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Other cash payments for the direct cash flow."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DividendsPaidDirectCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Dividend paid to the investors, for the direct cash flow."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DividendsReceivedDirectCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Dividend received on the investment, for the direct cash flow."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InterestPaidDirectCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Interest paid on loans, debt or borrowings, in the direct cash flow."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InterestReceivedDirectCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Interest received by the company, in the direct cash flow."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TaxesRefundPaidDirectCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Tax paid/refund related to operating activities, for the direct cash flow."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalAdjustmentsforNonCashItemsCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Sum of all adjustments back from net income but without real cash outflow or inflow."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ImpairmentLossReversalRecognizedinProfitorLossCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The difference between the future net cash flows expected to be received from the asset and its book value, recognized in the Income Statement."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DividendPaidCFOCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Dividend paid to the investors, in the Operating Cash Flow section."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DividendReceivedCFOCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Dividend received on investment, in the Operating Cash Flow section."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TaxesRefundPaidCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Total tax paid or received on operating activities."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherOperatingInflowsOutflowsofCashCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Any other cash inflows or outflows in the Operating Cash Flow section, not accounted for in the other specified items."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashAdvancesandLoansMadetoOtherPartiesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash outlay for cash advances and loans made to other parties."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashReceiptsfromRepaymentofAdvancesandLoansMadetoOtherPartiesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash received from the repayment of advances and loans made to other parties, in the Investing Cash Flow section."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DividendsReceivedCFICashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Dividend received on investment, in the Investing Cash Flow section."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InterestReceivedCFICashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Interest received by the company, in the Investing Cash Flow section."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InterestPaidCFFCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Interest paid on loans, debt or borrowings, in the Financing Cash Flow section."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeinAccruedIncomeCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods in the amount of outstanding money owed by a customer for goods or services provided by the company."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeinFinancialAssetsCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of the financial assets."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeinAdvancesfromCentralBanksCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of the advances from central banks."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeinFinancialLiabilitiesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of the financial liabilities."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeinInsuranceContractAssetsCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of the contract assets."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeinReinsuranceReceivablesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of the reinsurance receivable."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeinDeferredAcquisitionCostsNetCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of the deferred acquisition costs."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeinInsuranceFundsCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of the insurance funds."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeinInvestmentContractLiabilitiesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of the investment contract liabilities."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeinInsuranceContractLiabilitiesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The increase or decrease between periods of the insurance contract liabilities."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ProvisionandWriteOffofAssetsCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A non-cash adjustment for total provision and write off on assets & liabilities."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ReceiptsfromCustomersCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Payment received from customers in the Direct Cash Flow."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ReceiptsfromGovernmentGrantsCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash received from governments in the form of grants in the Direct Cash Flow."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class MinorityInterestCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Amount of net income (loss) for the period allocated to non-controlling shareholders, partners, or other equity holders in one or more of the entities included."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CapExReportedCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Capital expenditure, capitalized software development cost, maintenance capital expenditure, etc. as reported by the company."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashReceiptsfromTaxRefundsCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash received as refunds from tax authorities in operating cash flow, using the direct method"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashReceiptsfromDepositsbyBanksandCustomersCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash received from banks and customer deposits in operating cash flow, using the direct method. This item is usually only available for bank industry"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashReceiptsfromLoansCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash received from loans in operating cash flow, using the direct method. This item is usually only available for bank industry"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashReceiptsfromSecuritiesRelatedActivitiesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash received from the trading of securities in operating cash flow, using the direct method. This item is usually only available for bank and insurance industries"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashReceiptsfromFeesandCommissionsCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash received from agency fees and commissions in operating cash flow, using the direct method. This item is usually available for bank and insurance industries"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashPaymentsforDepositsbyBanksandCustomersCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash paid for deposits by banks and customers in operating cash flow, using the direct method. This item is usually only available for bank industry"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashPaymentsforLoansCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash paid for loans in operating cash flow, using the direct method. This item is usually only available for bank industry"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InterestandCommissionPaidCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash paid for interest and commission in operating cash flow, using the direct method"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AllTaxesPaidCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash paid to tax authorities in operating cash flow, using the direct method"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashReceivedfromInsuranceActivitiesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash received from insurance activities in operating cash flow, using the direct method. This item is usually only available for insurance industry"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PremiumReceivedCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash received from premium income in operating cash flow, using the direct method. This item is usually only available for insurance industry"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ReinsuranceandOtherRecoveriesReceivedCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash received from reinsurance income or other recoveries income in operating cash flow, using the direct method. This item is usually only available for insurance industry"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PolicyholderDepositInvestmentReceivedCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash received from policyholder deposit investment activities in operating cash flow, using the direct method. This item is usually only available for insurance industry"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashPaidforInsuranceActivitiesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash paid out for insurance activities during the period in operating cash flow, using the direct method. This item is usually only available for insurance industry"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ClaimsPaidCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash paid out for claims by a insurance company during the period in operating cash flow, using the direct method. This item is usually only available for insurance industry"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CommissionPaidCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash paid for commissions in operating cash flow, using the direct method"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashPaidtoReinsurersCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash paid out to reinsurers in operating cash flow, using the direct method. This item is usually only available for insurance industry"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherUnderwritingExpensesPaidCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash paid out for underwriting expenses, such as the acquisition of new and renewal insurance contracts, in operating cash flow, using the direct method. This item is usually only available for insurance industry"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashDividendsForMinoritiesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash Distribution of earnings to Minority Stockholders."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashGeneratedfromOperatingActivitiesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The net cash from an entity's operating activities before real cash inflow or outflow for Dividend, Interest, Tax, or other unclassified operating activities."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FundFromOperationCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Funds from operations; populated only for real estate investment trusts (REITs), defined as the sum of net income, gain/loss (realized and unrealized) on investment securities, asset impairment charge, depreciation and amortization and gain/ loss on the sale of business and property plant and equipment."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetInvestmentPropertiesPurchaseAndSaleCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Net increase or decrease in cash due to purchases or sales of investment properties during the accounting PeriodAsByte."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PurchaseOfInvestmentPropertiesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash outflow for purchases of investment properties during the accounting PeriodAsByte."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class SaleOfInvestmentPropertiesCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cash inflow from sale of investment properties during the accounting PeriodAsByte."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherCashAdjustIncludedIntoChangeinCashCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Other cash adjustments included in change in cash not categorized above."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OtherCashAdjustExcludeFromChangeinCashCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Other changes to cash and cash equivalents during the accounting PeriodAsByte."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ChangeinCashSupplementalAsReportedCashFlowStatement(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The change in cash flow from the previous period to the current, as reported by the company, may be the same or not the same as Morningstar's standardized definition. It is a supplemental value which would be reported outside consolidated statements."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashFlowStatement(ReusuableCLRObject):
    """Definition of the CashFlowStatement class"""

    @property
    def CFFileDate(self) -> QuantConnect.Data.Fundamental.CashFlowFileDate:
        """Filing date of the Cash Flow Statement."""
        ...

    @property
    def Amortization(self) -> QuantConnect.Data.Fundamental.AmortizationCashFlowStatement:
        """The systematic and rational apportionment of the acquisition cost of intangible operational assets to future periods in which the benefits contribute to revenue. This field is to include Amortization and any variation where Amortization is the first account listed in the line item, excluding Amortization of Intangibles."""
        ...

    @property
    def CapitalExpenditure(self) -> QuantConnect.Data.Fundamental.CapitalExpenditureCashFlowStatement:
        """Funds used by a company to acquire or upgrade physical assets such as property, industrial buildings or equipment. This type of outlay is made by companies to maintain or increase the scope of their operations. Capital expenditures are generally depreciated or depleted over their useful life, as distinguished from repairs, which are subtracted from the income of the current year."""
        ...

    @property
    def CashDividendsPaid(self) -> QuantConnect.Data.Fundamental.CashDividendsPaidCashFlowStatement:
        """Payments for the cash dividends declared by an entity to shareholders during the period. This element includes paid and unpaid dividends declared during the period for both common and preferred stock."""
        ...

    @property
    def CashFlowFromContinuingFinancingActivities(self) -> QuantConnect.Data.Fundamental.CashFlowFromContinuingFinancingActivitiesCashFlowStatement:
        """Cash generated by or used in financing activities of continuing operations; excludes cash flows from discontinued operations."""
        ...

    @property
    def CashFlowFromContinuingInvestingActivities(self) -> QuantConnect.Data.Fundamental.CashFlowFromContinuingInvestingActivitiesCashFlowStatement:
        """Cash generated by or used in investing activities of continuing operations; excludes cash flows from discontinued operations."""
        ...

    @property
    def CashFlowFromContinuingOperatingActivities(self) -> QuantConnect.Data.Fundamental.CashFlowFromContinuingOperatingActivitiesCashFlowStatement:
        """Cash generated by or used in operating activities of continuing operations; excludes cash flows from discontinued operations."""
        ...

    @property
    def CashFlowFromDiscontinuedOperation(self) -> QuantConnect.Data.Fundamental.CashFlowFromDiscontinuedOperationCashFlowStatement:
        """The aggregate amount of cash flow from discontinued operation, including operating activities, investing activities, and financing activities."""
        ...

    @property
    def FinancingCashFlow(self) -> QuantConnect.Data.Fundamental.FinancingCashFlowCashFlowStatement:
        """The net cash inflow (outflow) from financing activity for the period, which involve changes to the long-term liabilities and stockholders' equity."""
        ...

    @property
    def InvestingCashFlow(self) -> QuantConnect.Data.Fundamental.InvestingCashFlowCashFlowStatement:
        """An item on the cash flow statement that reports the aggregate change in a company's cash position resulting from any gains (or losses) from investments in the financial markets and operating subsidiaries, and changes resulting from amounts spent on investments in capital assets such as plant and equipment."""
        ...

    @property
    def OperatingCashFlow(self) -> QuantConnect.Data.Fundamental.OperatingCashFlowCashFlowStatement:
        """The net cash from (used in) all of the entity's operating activities, including those of discontinued operations, of the reporting entity. Operating activities include all transactions and events that are not defined as investing or financing activities. Operating activities generally involve producing and delivering goods and providing services. Cash flows from operating activities are generally the cash effects of transactions and other events that enter into the determination of net income."""
        ...

    @property
    def BeginningCashPosition(self) -> QuantConnect.Data.Fundamental.BeginningCashPositionCashFlowStatement:
        """The cash and equivalents balance at the beginning of the accounting period, as indicated on the Cash Flow statement."""
        ...

    @property
    def EndCashPosition(self) -> QuantConnect.Data.Fundamental.EndCashPositionCashFlowStatement:
        """The cash and cash equivalents balance at the end of the accounting period, as indicated on the Cash Flow statement. It is equal to the Beginning Cash and Equivalents, plus the Net Change in Cash and Equivalents."""
        ...

    @property
    def CashFromDiscontinuedFinancingActivities(self) -> QuantConnect.Data.Fundamental.CashFromDiscontinuedFinancingActivitiesCashFlowStatement:
        """Cash generated by or used in financing activities of discontinued operations; excludes cash flows from continued operations."""
        ...

    @property
    def CashFromDiscontinuedInvestingActivities(self) -> QuantConnect.Data.Fundamental.CashFromDiscontinuedInvestingActivitiesCashFlowStatement:
        """The net cash inflow (outflow) from discontinued investing activities over the designated time period."""
        ...

    @property
    def ChangeInAccountPayable(self) -> QuantConnect.Data.Fundamental.ChangeInAccountPayableCashFlowStatement:
        """The increase or decrease between periods of the account payables."""
        ...

    @property
    def ChangeInTaxPayable(self) -> QuantConnect.Data.Fundamental.ChangeInTaxPayableCashFlowStatement:
        """The increase or decrease between periods of the tax payables."""
        ...

    @property
    def ChangeInAccruedExpense(self) -> QuantConnect.Data.Fundamental.ChangeInAccruedExpenseCashFlowStatement:
        """The increase or decrease between periods of the accrued expenses."""
        ...

    @property
    def ChangeInAccruedInvestmentIncome(self) -> QuantConnect.Data.Fundamental.ChangeInAccruedInvestmentIncomeCashFlowStatement:
        """The net change during the reporting period in investment income that has been earned but not yet received in cash."""
        ...

    @property
    def ChangesInCash(self) -> QuantConnect.Data.Fundamental.ChangesInCashCashFlowStatement:
        """The net change between the beginning and ending balance of cash and cash equivalents."""
        ...

    @property
    def ChangeInDeferredAcquisitionCosts(self) -> QuantConnect.Data.Fundamental.ChangeInDeferredAcquisitionCostsCashFlowStatement:
        """The change of the unamortized portion as of the balance sheet date of capitalized costs that vary with and are primarily related to the acquisition of new and renewal insurance contracts."""
        ...

    @property
    def ChangeInFederalFundsAndSecuritiesSoldForRepurchase(self) -> QuantConnect.Data.Fundamental.ChangeInFederalFundsAndSecuritiesSoldForRepurchaseCashFlowStatement:
        """The amount shown on the books that a bank with insufficient reserves borrows, at the federal funds rate, from another bank to meet its reserve requirements and the amount of securities that an institution sells and agrees to repurchase at a specified date for a specified price, net of any reductions or offsets."""
        ...

    @property
    def ChangeInFundsWithheld(self) -> QuantConnect.Data.Fundamental.ChangeInFundsWithheldCashFlowStatement:
        """The net change during the reporting period associated with funds withheld."""
        ...

    @property
    def ChangeInIncomeTaxPayable(self) -> QuantConnect.Data.Fundamental.ChangeInIncomeTaxPayableCashFlowStatement:
        """The increase or decrease between periods of the income tax payables."""
        ...

    @property
    def ChangeInInterestPayable(self) -> QuantConnect.Data.Fundamental.ChangeInInterestPayableCashFlowStatement:
        """The increase or decrease between periods of the interest payable. Interest payable means carrying value as of the balance sheet date of interest payable on all forms of debt."""
        ...

    @property
    def ChangeInInventory(self) -> QuantConnect.Data.Fundamental.ChangeInInventoryCashFlowStatement:
        """The increase or decrease between periods of the Inventories. Inventories represent merchandise bought for resale and supplies and raw materials purchased for use in revenue producing operations."""
        ...

    @property
    def ChangeInLoans(self) -> QuantConnect.Data.Fundamental.ChangeInLoansCashFlowStatement:
        """The net change that a lender gives money or property to a borrower and the borrower agrees to return the property or repay the borrowed money, along with interest, at a predetermined date in the future."""
        ...

    @property
    def ChangeInLossAndLossAdjustmentExpenseReserves(self) -> QuantConnect.Data.Fundamental.ChangeInLossAndLossAdjustmentExpenseReservesCashFlowStatement:
        """The net change during the reporting period in the reserve account established to account for expected but unspecified losses."""
        ...

    @property
    def ChangeInPayable(self) -> QuantConnect.Data.Fundamental.ChangeInPayableCashFlowStatement:
        """The increase or decrease between periods of the payables."""
        ...

    @property
    def ChangeInPayablesAndAccruedExpense(self) -> QuantConnect.Data.Fundamental.ChangeInPayablesAndAccruedExpenseCashFlowStatement:
        """The increase or decrease between periods of the payables and accrued expenses. Accrued expenses represent expenses incurred at the end of the reporting period but not yet paid; also called accrued liabilities. The accrued liability is shown under current liabilities in the balance sheet."""
        ...

    @property
    def ChangeInPrepaidAssets(self) -> QuantConnect.Data.Fundamental.ChangeInPrepaidAssetsCashFlowStatement:
        """The increase or decrease between periods of the prepaid assets."""
        ...

    @property
    def ChangeInReceivables(self) -> QuantConnect.Data.Fundamental.ChangeInReceivablesCashFlowStatement:
        """The increase or decrease between periods of the receivables. Receivables are amounts due to be paid to the company from clients and other."""
        ...

    @property
    def ChangeInReinsuranceRecoverableOnPaidAndUnpaidLosses(self) -> QuantConnect.Data.Fundamental.ChangeInReinsuranceRecoverableOnPaidAndUnpaidLossesCashFlowStatement:
        """The net change during the reporting period in the amount of benefits the ceding insurer expects to recover on insurance policies ceded to other insurance entities as of the balance sheet date for all guaranteed benefit types."""
        ...

    @property
    def ChangeInRestrictedCash(self) -> QuantConnect.Data.Fundamental.ChangeInRestrictedCashCashFlowStatement:
        """The net cash inflow (outflow) for the net change associated with funds that are not available for withdrawal or use (such as funds held in escrow)."""
        ...

    @property
    def ChangeInTradingAccountSecurities(self) -> QuantConnect.Data.Fundamental.ChangeInTradingAccountSecuritiesCashFlowStatement:
        """The net change during the reporting period associated with trading account assets. Trading account assets are bought and held principally for the purpose of selling them in the near term (thus held for only a short period of time). Unrealized holding gains and losses for trading securities are included in earnings."""
        ...

    @property
    def ChangeInWorkingCapital(self) -> QuantConnect.Data.Fundamental.ChangeInWorkingCapitalCashFlowStatement:
        """The increase or decrease between periods of the working capital. Working Capital is the amount left to the company to finance operations and expansion after current liabilities have been covered."""
        ...

    @property
    def DeferredIncomeTax(self) -> QuantConnect.Data.Fundamental.DeferredIncomeTaxCashFlowStatement:
        """The component of income tax expense for the period representing the net change in the entities deferred tax assets and liabilities pertaining to continuing operations."""
        ...

    @property
    def DeferredTax(self) -> QuantConnect.Data.Fundamental.DeferredTaxCashFlowStatement:
        """Future tax liability or asset, resulting from temporary differences between book (accounting) value of assets and liabilities, and their tax value. This arises due to differences between financial accounting for shareholders and tax accounting."""
        ...

    @property
    def Depletion(self) -> QuantConnect.Data.Fundamental.DepletionCashFlowStatement:
        """Unlike depreciation and amortization, which mainly describe the deduction of expenses due to the aging of equipment and property, depletion is the actual physical reduction of natural resources by companies. For example, coalmines, oil fields and other natural resources are depleted on company accounting statements. This reduction in the quantity of resources is meant to assist in accurately identifying the value of the asset on the balance sheet."""
        ...

    @property
    def Depreciation(self) -> QuantConnect.Data.Fundamental.DepreciationCashFlowStatement:
        """An expense recorded to allocate a tangible asset's cost over its useful life. Since it is a non-cash expense, it increases free cash flow while decreasing reported earnings."""
        ...

    @property
    def DepreciationAndAmortization(self) -> QuantConnect.Data.Fundamental.DepreciationAndAmortizationCashFlowStatement:
        """The current period expense charged against earnings on long-lived, physical assets used in the normal conduct of business and not intended for resale to allocate or recognize the cost of assets over their useful lives; or to record the reduction in book value of an intangible asset over the benefit period of such asset."""
        ...

    @property
    def DepreciationAmortizationDepletion(self) -> QuantConnect.Data.Fundamental.DepreciationAmortizationDepletionCashFlowStatement:
        """It is a non cash charge that represents a reduction in the value of fixed assets due to wear, age or obsolescence. This figure also includes amortization of leased property, intangibles, and goodwill, and depletion. This non-cash item is an add-back to the cash flow statement."""
        ...

    @property
    def EffectOfExchangeRateChanges(self) -> QuantConnect.Data.Fundamental.EffectOfExchangeRateChangesCashFlowStatement:
        """The effect of exchange rate changes on cash balances held in foreign currencies."""
        ...

    @property
    def IncreaseDecreaseInDeposit(self) -> QuantConnect.Data.Fundamental.IncreaseDecreaseInDepositCashFlowStatement:
        """The aggregate net change during the reporting period in moneys given as security, collateral, or margin deposits."""
        ...

    @property
    def NetCommonStockIssuance(self) -> QuantConnect.Data.Fundamental.NetCommonStockIssuanceCashFlowStatement:
        """The increase or decrease between periods of common stock."""
        ...

    @property
    def NetIssuancePaymentsOfDebt(self) -> QuantConnect.Data.Fundamental.NetIssuancePaymentsOfDebtCashFlowStatement:
        """The increase or decrease between periods of debt."""
        ...

    @property
    def NetLongTermDebtIssuance(self) -> QuantConnect.Data.Fundamental.NetLongTermDebtIssuanceCashFlowStatement:
        """The increase or decrease between periods of long term debt. Long term debt includes notes payable, bonds payable, mortgage loans, convertible debt, subordinated debt and other types of long term debt."""
        ...

    @property
    def NetPreferredStockIssuance(self) -> QuantConnect.Data.Fundamental.NetPreferredStockIssuanceCashFlowStatement:
        """The increase or decrease between periods of preferred stock."""
        ...

    @property
    def NetShortTermDebtIssuance(self) -> QuantConnect.Data.Fundamental.NetShortTermDebtIssuanceCashFlowStatement:
        """The increase or decrease between periods of short term debt."""
        ...

    @property
    def NetCashFromDiscontinuedOperations(self) -> QuantConnect.Data.Fundamental.NetCashFromDiscontinuedOperationsCashFlowStatement:
        """The net cash from (used in) all of the entity's discontinued operating activities, excluding those of continued operations, of the reporting entity."""
        ...

    @property
    def NetForeignCurrencyExchangeGainLoss(self) -> QuantConnect.Data.Fundamental.NetForeignCurrencyExchangeGainLossCashFlowStatement:
        """The aggregate amount of realized and unrealized gain or loss resulting from changes in exchange rates between currencies. (Excludes foreign currency transactions designated as hedges of net investment in a foreign entity and inter-company foreign currency transactions that are of a long-term nature, when the entities to the transaction are consolidated, combined, or accounted for by the equity method in the reporting entity's financial statements. For certain entities, primarily banks, which are dealers in foreign exchange, foreign currency transaction gains or losses, may be disclosed as dealer gains or losses.)"""
        ...

    @property
    def NetIncomeFromContinuingOperations(self) -> QuantConnect.Data.Fundamental.NetIncomeFromContinuingOperationsCashFlowStatement:
        """Revenue less expenses and taxes from the entity's ongoing operations and before income (loss) from discontinued operations, extraordinary items, impact of changes in accounting principles, minority interest, and various other reconciling adjustments; represents the starting line for Operating Cash Flow."""
        ...

    @property
    def PaymentForLoans(self) -> QuantConnect.Data.Fundamental.PaymentForLoansCashFlowStatement:
        """Payment from a bank or insurance company to the lender who lends money or property based on the agreement, along with interest, at a predetermined date in the future."""
        ...

    @property
    def CommonStockPayments(self) -> QuantConnect.Data.Fundamental.CommonStockPaymentsCashFlowStatement:
        """The cash outflow to reacquire common stock during the period."""
        ...

    @property
    def PreferredStockPayments(self) -> QuantConnect.Data.Fundamental.PreferredStockPaymentsCashFlowStatement:
        """The cash outflow to reacquire preferred stock during the period."""
        ...

    @property
    def LongTermDebtPayments(self) -> QuantConnect.Data.Fundamental.LongTermDebtPaymentsCashFlowStatement:
        """The cash outflow for debt initially having maturity due after one year or beyond the normal operating cycle, if longer."""
        ...

    @property
    def ShortTermDebtPayments(self) -> QuantConnect.Data.Fundamental.ShortTermDebtPaymentsCashFlowStatement:
        """The cash outflow for a borrowing having initial term of repayment within one year or the normal operating cycle, if longer."""
        ...

    @property
    def ProceedsFromLoans(self) -> QuantConnect.Data.Fundamental.ProceedsFromLoansCashFlowStatement:
        """The cash inflow from borrowing money or property for a bank or insurance company."""
        ...

    @property
    def ProceedsFromStockOptionExercised(self) -> QuantConnect.Data.Fundamental.ProceedsFromStockOptionExercisedCashFlowStatement:
        """The cash inflow associated with the amount received from holders exercising their stock options."""
        ...

    @property
    def CommonStockIssuance(self) -> QuantConnect.Data.Fundamental.CommonStockIssuanceCashFlowStatement:
        """The cash inflow from offering common stock, which is the additional capital contribution to the entity during the period."""
        ...

    @property
    def LongTermDebtIssuance(self) -> QuantConnect.Data.Fundamental.LongTermDebtIssuanceCashFlowStatement:
        """The cash inflow from a debt initially having maturity due after one year or beyond the operating cycle, if longer."""
        ...

    @property
    def PreferredStockIssuance(self) -> QuantConnect.Data.Fundamental.PreferredStockIssuanceCashFlowStatement:
        """The cash inflow from offering preferred stock."""
        ...

    @property
    def ShortTermDebtIssuance(self) -> QuantConnect.Data.Fundamental.ShortTermDebtIssuanceCashFlowStatement:
        """The cash inflow from a debt initially having maturity due within one year or the normal operating cycle, if longer."""
        ...

    @property
    def NetProceedsPaymentForLoan(self) -> QuantConnect.Data.Fundamental.NetProceedsPaymentForLoanCashFlowStatement:
        """The net value of proceeds or payments of loans."""
        ...

    @property
    def ProceedsPaymentInInterestBearingDepositsInBank(self) -> QuantConnect.Data.Fundamental.ProceedsPaymentInInterestBearingDepositsInBankCashFlowStatement:
        """The net change on interest-bearing deposits in other financial institutions for relatively short periods of time including, for example, certificates of deposits."""
        ...

    @property
    def PurchaseOfIntangibles(self) -> QuantConnect.Data.Fundamental.PurchaseOfIntangiblesCashFlowStatement:
        """The amount of capital outlays undertaken to increase, construct or improve intangible assets."""
        ...

    @property
    def PurchaseOfInvestment(self) -> QuantConnect.Data.Fundamental.PurchaseOfInvestmentCashFlowStatement:
        """All purchases of investments, including both long term and short term."""
        ...

    @property
    def PurchaseOfPPE(self) -> QuantConnect.Data.Fundamental.PurchaseOfPPECashFlowStatement:
        """The amount of capital outlays undertaken to increase, construct or improve capital assets. This category includes property, plant equipment, furniture, fixed assets, buildings, and improvement."""
        ...

    @property
    def PurchaseOfBusiness(self) -> QuantConnect.Data.Fundamental.PurchaseOfBusinessCashFlowStatement:
        """All the purchases of business including business acquisitions, investment in subsidiary; investing in affiliated companies, and join venture."""
        ...

    @property
    def NetBusinessPurchaseAndSale(self) -> QuantConnect.Data.Fundamental.NetBusinessPurchaseAndSaleCashFlowStatement:
        """The net change between Purchases/Sales of Business."""
        ...

    @property
    def NetIntangiblesPurchaseAndSale(self) -> QuantConnect.Data.Fundamental.NetIntangiblesPurchaseAndSaleCashFlowStatement:
        """The net change between Purchases/Sales of Intangibles."""
        ...

    @property
    def NetInvestmentPurchaseAndSale(self) -> QuantConnect.Data.Fundamental.NetInvestmentPurchaseAndSaleCashFlowStatement:
        """The net change between Purchases/Sales of Investments."""
        ...

    @property
    def NetPPEPurchaseAndSale(self) -> QuantConnect.Data.Fundamental.NetPPEPurchaseAndSaleCashFlowStatement:
        """The net change between Purchases/Sales of PPE."""
        ...

    @property
    def SaleOfBusiness(self) -> QuantConnect.Data.Fundamental.SaleOfBusinessCashFlowStatement:
        """Proceeds received from selling a business including proceeds from a subsidiary, and proceeds from an affiliated company."""
        ...

    @property
    def SaleOfIntangibles(self) -> QuantConnect.Data.Fundamental.SaleOfIntangiblesCashFlowStatement:
        """The amount of capital inflow from the sale of all kinds of intangible assets."""
        ...

    @property
    def SaleOfInvestment(self) -> QuantConnect.Data.Fundamental.SaleOfInvestmentCashFlowStatement:
        """Proceeds received from selling all kind of investments, including both long term and short term."""
        ...

    @property
    def SaleOfPPE(self) -> QuantConnect.Data.Fundamental.SaleOfPPECashFlowStatement:
        """Proceeds from selling any fixed assets such as property, plant and equipment, which also includes retirement of equipment."""
        ...

    @property
    def ChangesInAccountReceivables(self) -> QuantConnect.Data.Fundamental.ChangesInAccountReceivablesCashFlowStatement:
        """The increase or decrease between periods of the accounts receivables."""
        ...

    @property
    def AmortizationOfFinancingCostsAndDiscounts(self) -> QuantConnect.Data.Fundamental.AmortizationOfFinancingCostsAndDiscountsCashFlowStatement:
        """The component of interest expense representing the non-cash expenses charged against earnings in the period to allocate debt discount and premium, and the costs to issue debt and obtain financing over the related debt instruments. This item is usually only available for bank industry."""
        ...

    @property
    def AmortizationOfSecurities(self) -> QuantConnect.Data.Fundamental.AmortizationOfSecuritiesCashFlowStatement:
        """Represents amortization of the allocation of a lump sum amount to different time periods, particularly for securities, debt, loans, and other forms of financing. Does not include amortization, amortization of capital expenditure and intangible assets."""
        ...

    @property
    def AssetImpairmentCharge(self) -> QuantConnect.Data.Fundamental.AssetImpairmentChargeCashFlowStatement:
        """The charge against earnings resulting from the aggregate write down of all assets from their carrying value to their fair value."""
        ...

    @property
    def ChangeInDividendPayable(self) -> QuantConnect.Data.Fundamental.ChangeInDividendPayableCashFlowStatement:
        """The increase or decrease between periods of the dividend payables."""
        ...

    @property
    def ChangeInDeferredCharges(self) -> QuantConnect.Data.Fundamental.ChangeInDeferredChargesCashFlowStatement:
        """The net change during the reporting period in the value of expenditures made during the current reporting period for benefits that will be received over a period of years. This item is usually only available for bank industry."""
        ...

    @property
    def ChangeInOtherCurrentAssets(self) -> QuantConnect.Data.Fundamental.ChangeInOtherCurrentAssetsCashFlowStatement:
        """The increase or decrease between periods of the Other Current Assets. This category typically includes prepayments, deferred charges, and amounts (other than trade accounts) due from parents and subsidiaries."""
        ...

    @property
    def ChangeInOtherCurrentLiabilities(self) -> QuantConnect.Data.Fundamental.ChangeInOtherCurrentLiabilitiesCashFlowStatement:
        """The increase or decrease between periods of the Other Current liabilities. Other Current liabilities is a balance sheet entry used by companies to group together current liabilities that are not assigned to common liabilities such as debt obligations or accounts payable."""
        ...

    @property
    def ChangeInOtherWorkingCapital(self) -> QuantConnect.Data.Fundamental.ChangeInOtherWorkingCapitalCashFlowStatement:
        """The increase or decrease between periods of the other working capital."""
        ...

    @property
    def ChangeInUnearnedPremiums(self) -> QuantConnect.Data.Fundamental.ChangeInUnearnedPremiumsCashFlowStatement:
        """The change during the period in the unearned portion of premiums written, excluding the portion amortized into income. This item is usually only available for insurance industry."""
        ...

    @property
    def CommonStockDividendPaid(self) -> QuantConnect.Data.Fundamental.CommonStockDividendPaidCashFlowStatement:
        """The cash outflow from the distribution of an entity's earnings in the form of dividends to common shareholders."""
        ...

    @property
    def EarningsLossesFromEquityInvestments(self) -> QuantConnect.Data.Fundamental.EarningsLossesFromEquityInvestmentsCashFlowStatement:
        """This item represents the entity's proportionate share for the period of the net income (loss) of its investee (such as unconsolidated subsidiaries and joint ventures) to which the equity method of accounting is applied. The amount typically reflects adjustments."""
        ...

    @property
    def ExcessTaxBenefitFromStockBasedCompensation(self) -> QuantConnect.Data.Fundamental.ExcessTaxBenefitFromStockBasedCompensationCashFlowStatement:
        """Reductions in the entity's income taxes that arise when compensation cost (from non-qualified share-based compensation) recognized on the entities tax return exceeds compensation cost from share-based compensation recognized in financial statements. This element reduces net cash provided by operating activities."""
        ...

    @property
    def GainLossOnInvestmentSecurities(self) -> QuantConnect.Data.Fundamental.GainLossOnInvestmentSecuritiesCashFlowStatement:
        """This item represents the net total realized gain (loss) included in earnings for the period as a result of selling or holding marketable securities categorized as trading, available-for-sale, or held-to-maturity, including the unrealized holding gain or loss of held-to- maturity securities transferred to the trading security category and the cumulative unrealized gain or loss which was included in other comprehensive income (a separate component of shareholders' equity) for available-for-sale securities transferred to trading securities during the period. Additionally, this item would include any losses recognized for other than temporary impairments of the subject investments in debt and equity securities."""
        ...

    @property
    def GainLossOnSaleOfBusiness(self) -> QuantConnect.Data.Fundamental.GainLossOnSaleOfBusinessCashFlowStatement:
        """The difference between the sale price or salvage price and the book value of an asset that was sold or retired during the reporting period. This element refers to the gain (loss) and not to the cash proceeds of the business. This element is a non-cash adjustment to net income when calculating net cash generated by operating activities using the indirect method."""
        ...

    @property
    def GainLossOnSaleOfPPE(self) -> QuantConnect.Data.Fundamental.GainLossOnSaleOfPPECashFlowStatement:
        """The difference between the sale price or salvage price and the book value of the property, plant and equipment that was sold or retired during the reporting period. Includes the amount received from selling any fixed assets such as property, plant and equipment. Usually this section also includes any retirement of equipment. Such as Sale of business segments; Sale of credit and receivables; Property disposition; Proceeds from sale or disposition of business or investment; Decrease in excess of purchase price over acquired net assets; Abandoned project (expenditures) credit; Allowances for other funds during construction."""
        ...

    @property
    def InterestCreditedOnPolicyholderDeposits(self) -> QuantConnect.Data.Fundamental.InterestCreditedOnPolicyholderDepositsCashFlowStatement:
        """An expense reported in the income statement and needs to be removed from net income to arrive at cash provided by (used in) operations to the extent that such interest has not been paid. This item is usually only available for insurance industry."""
        ...

    @property
    def CashFromDiscontinuedOperatingActivities(self) -> QuantConnect.Data.Fundamental.CashFromDiscontinuedOperatingActivitiesCashFlowStatement:
        """The net cash from (used in) all of the entity's discontinued operating activities, excluding those of continued operations, of the reporting entity."""
        ...

    @property
    def OperatingGainsLosses(self) -> QuantConnect.Data.Fundamental.OperatingGainsLossesCashFlowStatement:
        """The gain or loss from the entity's ongoing operations."""
        ...

    @property
    def NetOtherFinancingCharges(self) -> QuantConnect.Data.Fundamental.NetOtherFinancingChargesCashFlowStatement:
        """Miscellaneous charges incurred due to Financing activities."""
        ...

    @property
    def NetOtherInvestingChanges(self) -> QuantConnect.Data.Fundamental.NetOtherInvestingChangesCashFlowStatement:
        """Miscellaneous charges incurred due to Investing activities."""
        ...

    @property
    def OtherNonCashItems(self) -> QuantConnect.Data.Fundamental.OtherNonCashItemsCashFlowStatement:
        """Items which adjusted back from net income but without real cash outflow or inflow."""
        ...

    @property
    def PensionAndEmployeeBenefitExpense(self) -> QuantConnect.Data.Fundamental.PensionAndEmployeeBenefitExpenseCashFlowStatement:
        """The amount of pension and other (such as medical, dental and life insurance) postretirement benefit costs recognized during the period."""
        ...

    @property
    def PreferredStockDividendPaid(self) -> QuantConnect.Data.Fundamental.PreferredStockDividendPaidCashFlowStatement:
        """Pay for the amount of dividends declared or paid in the period to preferred shareholders or the amount for which the obligation to pay them dividends rose in the period."""
        ...

    @property
    def ProceedsPaymentFederalFundsSoldAndSecuritiesPurchasedUnderAgreementToResell(self) -> QuantConnect.Data.Fundamental.ProceedsPaymentFederalFundsSoldAndSecuritiesPurchasedUnderAgreementToResellCashFlowStatement:
        """The aggregate amount change of (1) the lending of excess federal funds to another commercial bank requiring such for its legal reserve requirements and (2) securities purchased under agreements to resell. This item is usually only available for bank industry."""
        ...

    @property
    def ProvisionForLoanLeaseAndOtherLosses(self) -> QuantConnect.Data.Fundamental.ProvisionForLoanLeaseAndOtherLossesCashFlowStatement:
        """The sum of the periodic provision charged to earnings, based on an assessment of uncollectible from the counterparty on account of loan, lease or other credit losses, to reduce these accounts to the amount that approximates their net realizable value. This item is usually only available for bank industry."""
        ...

    @property
    def RealizedGainLossOnSaleOfLoansAndLease(self) -> QuantConnect.Data.Fundamental.RealizedGainLossOnSaleOfLoansAndLeaseCashFlowStatement:
        """The gains and losses included in earnings that represent the difference between the sale price and the carrying value of loans and leases that were sold during the reporting period. This element refers to the gain (loss) and not to the cash proceeds of the sales. This element is a non-cash adjustment to net income when calculating net cash generated by operating activities using the indirect method. This item is usually only available for bank industry."""
        ...

    @property
    def StockBasedCompensation(self) -> QuantConnect.Data.Fundamental.StockBasedCompensationCashFlowStatement:
        """Value of stock issued during the period as a result of any share-based compensation plan other than an employee stock ownership plan (ESOP)."""
        ...

    @property
    def UnrealizedGainLossOnInvestmentSecurities(self) -> QuantConnect.Data.Fundamental.UnrealizedGainLossOnInvestmentSecuritiesCashFlowStatement:
        """The increases (decreases) in the market value of unsold securities whose gains (losses) were included in earnings."""
        ...

    @property
    def UnrealizedGainsLossesOnDerivatives(self) -> QuantConnect.Data.Fundamental.UnrealizedGainsLossesOnDerivativesCashFlowStatement:
        """The gross gains and losses on derivatives. This item is usually only available for insurance industry."""
        ...

    @property
    def AmortizationOfIntangibles(self) -> QuantConnect.Data.Fundamental.AmortizationOfIntangiblesCashFlowStatement:
        """The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets."""
        ...

    @property
    def IncomeTaxPaidSupplementalData(self) -> QuantConnect.Data.Fundamental.IncomeTaxPaidSupplementalDataCashFlowStatement:
        """The amount of cash paid during the current period to foreign, federal state and local authorities as taxes on income."""
        ...

    @property
    def InterestPaidSupplementalData(self) -> QuantConnect.Data.Fundamental.InterestPaidSupplementalDataCashFlowStatement:
        """The amount of cash paid during the current period for interest owed on money borrowed; including amount of interest capitalized."""
        ...

    @property
    def IssuanceOfCapitalStock(self) -> QuantConnect.Data.Fundamental.IssuanceOfCapitalStockCashFlowStatement:
        """The cash inflow from offering common stock, which is the additional capital contribution to the entity during the period."""
        ...

    @property
    def IssuanceOfDebt(self) -> QuantConnect.Data.Fundamental.IssuanceOfDebtCashFlowStatement:
        """The cash inflow due to an increase in long term debt."""
        ...

    @property
    def RepaymentOfDebt(self) -> QuantConnect.Data.Fundamental.RepaymentOfDebtCashFlowStatement:
        """Payments to Settle Long Term Debt plus Payments to Settle Short Term Debt."""
        ...

    @property
    def RepurchaseOfCapitalStock(self) -> QuantConnect.Data.Fundamental.RepurchaseOfCapitalStockCashFlowStatement:
        """Payments for Common Stock plus Payments for Preferred Stock."""
        ...

    @property
    def FreeCashFlow(self) -> QuantConnect.Data.Fundamental.FreeCashFlowCashFlowStatement:
        """Cash Flow Operations minus Capital Expenditures."""
        ...

    @property
    def DecreaseinInterestBearingDepositsinBank(self) -> QuantConnect.Data.Fundamental.DecreaseinInterestBearingDepositsinBankCashFlowStatement:
        """The net change on interest-bearing deposits in other financial institutions for relatively short periods of time including, for example, certificates of deposits."""
        ...

    @property
    def IncreaseinInterestBearingDepositsinBank(self) -> QuantConnect.Data.Fundamental.IncreaseinInterestBearingDepositsinBankCashFlowStatement:
        """Increase in interest-bearing deposits in bank."""
        ...

    @property
    def InterestReceivedCFO(self) -> QuantConnect.Data.Fundamental.InterestReceivedCFOCashFlowStatement:
        """Interest received by the company, in the Operating Cash Flow section."""
        ...

    @property
    def InterestPaidCFO(self) -> QuantConnect.Data.Fundamental.InterestPaidCFOCashFlowStatement:
        """Interest paid on loans, debt or borrowings, in the Operating Cash Flow section."""
        ...

    @property
    def PurchaseofSubsidiaries(self) -> QuantConnect.Data.Fundamental.PurchaseofSubsidiariesCashFlowStatement:
        """Purchase of subsidiaries or interest in subsidiaries (investments 51% and above)."""
        ...

    @property
    def PurchaseofJointVentureAssociate(self) -> QuantConnect.Data.Fundamental.PurchaseofJointVentureAssociateCashFlowStatement:
        """Purchase of joint venture/associates (investment below 50%)."""
        ...

    @property
    def SaleofSubsidiaries(self) -> QuantConnect.Data.Fundamental.SaleofSubsidiariesCashFlowStatement:
        """Cash inflow from the disposal of any subsidiaries."""
        ...

    @property
    def SaleofJointVentureAssociate(self) -> QuantConnect.Data.Fundamental.SaleofJointVentureAssociateCashFlowStatement:
        """Cash inflow from the disposal of joint venture/associates (investment below 50%)."""
        ...

    @property
    def IncreaseDecreaseinLeaseFinancing(self) -> QuantConnect.Data.Fundamental.IncreaseDecreaseinLeaseFinancingCashFlowStatement:
        """Change in cash flow resulting from increase/decrease in lease financing."""
        ...

    @property
    def IncreaseinLeaseFinancing(self) -> QuantConnect.Data.Fundamental.IncreaseinLeaseFinancingCashFlowStatement:
        """The cash inflow from increase in lease financing."""
        ...

    @property
    def RepaymentinLeaseFinancing(self) -> QuantConnect.Data.Fundamental.RepaymentinLeaseFinancingCashFlowStatement:
        """The cash outflow to repay lease financing during the period."""
        ...

    @property
    def ShareofAssociates(self) -> QuantConnect.Data.Fundamental.ShareofAssociatesCashFlowStatement:
        """A non-cash adjustment for share of associates' income in respect of operating activities."""
        ...

    @property
    def ProfitonDisposals(self) -> QuantConnect.Data.Fundamental.ProfitonDisposalsCashFlowStatement:
        """The difference between the sale price or salvage price and the book value of an asset that was sold or retired during the reporting period."""
        ...

    @property
    def ReorganizationOtherCosts(self) -> QuantConnect.Data.Fundamental.ReorganizationOtherCostsCashFlowStatement:
        """A non-cash adjustment relating to restructuring costs."""
        ...

    @property
    def NetOutwardLoans(self) -> QuantConnect.Data.Fundamental.NetOutwardLoansCashFlowStatement:
        """Adjustments due to net loans to/from outsiders in the Investing Cash Flow section."""
        ...

    @property
    def IssueExpenses(self) -> QuantConnect.Data.Fundamental.IssueExpensesCashFlowStatement:
        """Cost associated with issuance of debt/equity capital in the Financing Cash Flow section."""
        ...

    @property
    def ChangeinDepositsbyBanksandCustomers(self) -> QuantConnect.Data.Fundamental.ChangeinDepositsbyBanksandCustomersCashFlowStatement:
        """The increase or decrease between periods of the deposits by banks and customers."""
        ...

    @property
    def CashFlowsfromusedinOperatingActivitiesDirect(self) -> QuantConnect.Data.Fundamental.CashFlowsfromusedinOperatingActivitiesDirectCashFlowStatement:
        """The net cash from (used in) all of the entity's operating activities, including those of discontinued operations, of the reporting entity under the direct method."""
        ...

    @property
    def ClassesofCashReceiptsfromOperatingActivities(self) -> QuantConnect.Data.Fundamental.ClassesofCashReceiptsfromOperatingActivitiesCashFlowStatement:
        """Sum of total cash receipts in the direct cash flow."""
        ...

    @property
    def OtherCashReceiptsfromOperatingActivities(self) -> QuantConnect.Data.Fundamental.OtherCashReceiptsfromOperatingActivitiesCashFlowStatement:
        """Other cash receipts for the direct cash flow."""
        ...

    @property
    def ClassesofCashPayments(self) -> QuantConnect.Data.Fundamental.ClassesofCashPaymentsCashFlowStatement:
        """Sum of total cash payment in the direct cash flow."""
        ...

    @property
    def PaymentstoSuppliersforGoodsandServices(self) -> QuantConnect.Data.Fundamental.PaymentstoSuppliersforGoodsandServicesCashFlowStatement:
        """Cash paid to suppliers when purchasing goods or services by the company, in the direct cash flow."""
        ...

    @property
    def PaymentsonBehalfofEmployees(self) -> QuantConnect.Data.Fundamental.PaymentsonBehalfofEmployeesCashFlowStatement:
        """Cash paid in a form of salaries or other benefits to employees of the company, in the direct cash flow."""
        ...

    @property
    def OtherCashPaymentsfromOperatingActivities(self) -> QuantConnect.Data.Fundamental.OtherCashPaymentsfromOperatingActivitiesCashFlowStatement:
        """Other cash payments for the direct cash flow."""
        ...

    @property
    def DividendsPaidDirect(self) -> QuantConnect.Data.Fundamental.DividendsPaidDirectCashFlowStatement:
        """Dividend paid to the investors, for the direct cash flow."""
        ...

    @property
    def DividendsReceivedDirect(self) -> QuantConnect.Data.Fundamental.DividendsReceivedDirectCashFlowStatement:
        """Dividend received on the investment, for the direct cash flow."""
        ...

    @property
    def InterestPaidDirect(self) -> QuantConnect.Data.Fundamental.InterestPaidDirectCashFlowStatement:
        """Interest paid on loans, debt or borrowings, in the direct cash flow."""
        ...

    @property
    def InterestReceivedDirect(self) -> QuantConnect.Data.Fundamental.InterestReceivedDirectCashFlowStatement:
        """Interest received by the company, in the direct cash flow."""
        ...

    @property
    def TaxesRefundPaidDirect(self) -> QuantConnect.Data.Fundamental.TaxesRefundPaidDirectCashFlowStatement:
        """Tax paid/refund related to operating activities, for the direct cash flow."""
        ...

    @property
    def TotalAdjustmentsforNonCashItems(self) -> QuantConnect.Data.Fundamental.TotalAdjustmentsforNonCashItemsCashFlowStatement:
        """Sum of all adjustments back from net income but without real cash outflow or inflow."""
        ...

    @property
    def ImpairmentLossReversalRecognizedinProfitorLoss(self) -> QuantConnect.Data.Fundamental.ImpairmentLossReversalRecognizedinProfitorLossCashFlowStatement:
        """The difference between the future net cash flows expected to be received from the asset and its book value, recognized in the Income Statement."""
        ...

    @property
    def DividendPaidCFO(self) -> QuantConnect.Data.Fundamental.DividendPaidCFOCashFlowStatement:
        """Dividend paid to the investors, in the Operating Cash Flow section."""
        ...

    @property
    def DividendReceivedCFO(self) -> QuantConnect.Data.Fundamental.DividendReceivedCFOCashFlowStatement:
        """Dividend received on investment, in the Operating Cash Flow section."""
        ...

    @property
    def TaxesRefundPaid(self) -> QuantConnect.Data.Fundamental.TaxesRefundPaidCashFlowStatement:
        """Total tax paid or received on operating activities."""
        ...

    @property
    def OtherOperatingInflowsOutflowsofCash(self) -> QuantConnect.Data.Fundamental.OtherOperatingInflowsOutflowsofCashCashFlowStatement:
        """Any other cash inflows or outflows in the Operating Cash Flow section, not accounted for in the other specified items."""
        ...

    @property
    def CashAdvancesandLoansMadetoOtherParties(self) -> QuantConnect.Data.Fundamental.CashAdvancesandLoansMadetoOtherPartiesCashFlowStatement:
        """Cash outlay for cash advances and loans made to other parties."""
        ...

    @property
    def CashReceiptsfromRepaymentofAdvancesandLoansMadetoOtherParties(self) -> QuantConnect.Data.Fundamental.CashReceiptsfromRepaymentofAdvancesandLoansMadetoOtherPartiesCashFlowStatement:
        """Cash received from the repayment of advances and loans made to other parties, in the Investing Cash Flow section."""
        ...

    @property
    def DividendsReceivedCFI(self) -> QuantConnect.Data.Fundamental.DividendsReceivedCFICashFlowStatement:
        """Dividend received on investment, in the Investing Cash Flow section."""
        ...

    @property
    def InterestReceivedCFI(self) -> QuantConnect.Data.Fundamental.InterestReceivedCFICashFlowStatement:
        """Interest received by the company, in the Investing Cash Flow section."""
        ...

    @property
    def InterestPaidCFF(self) -> QuantConnect.Data.Fundamental.InterestPaidCFFCashFlowStatement:
        """Interest paid on loans, debt or borrowings, in the Financing Cash Flow section."""
        ...

    @property
    def ChangeinAccruedIncome(self) -> QuantConnect.Data.Fundamental.ChangeinAccruedIncomeCashFlowStatement:
        """The increase or decrease between periods in the amount of outstanding money owed by a customer for goods or services provided by the company."""
        ...

    @property
    def ChangeinFinancialAssets(self) -> QuantConnect.Data.Fundamental.ChangeinFinancialAssetsCashFlowStatement:
        """The increase or decrease between periods of the financial assets."""
        ...

    @property
    def ChangeinAdvancesfromCentralBanks(self) -> QuantConnect.Data.Fundamental.ChangeinAdvancesfromCentralBanksCashFlowStatement:
        """The increase or decrease between periods of the advances from central banks."""
        ...

    @property
    def ChangeinFinancialLiabilities(self) -> QuantConnect.Data.Fundamental.ChangeinFinancialLiabilitiesCashFlowStatement:
        """The increase or decrease between periods of the financial liabilities."""
        ...

    @property
    def ChangeinInsuranceContractAssets(self) -> QuantConnect.Data.Fundamental.ChangeinInsuranceContractAssetsCashFlowStatement:
        """The increase or decrease between periods of the contract assets."""
        ...

    @property
    def ChangeinReinsuranceReceivables(self) -> QuantConnect.Data.Fundamental.ChangeinReinsuranceReceivablesCashFlowStatement:
        """The increase or decrease between periods of the reinsurance receivable."""
        ...

    @property
    def ChangeinDeferredAcquisitionCostsNet(self) -> QuantConnect.Data.Fundamental.ChangeinDeferredAcquisitionCostsNetCashFlowStatement:
        """The increase or decrease between periods of the deferred acquisition costs."""
        ...

    @property
    def ChangeinInsuranceFunds(self) -> QuantConnect.Data.Fundamental.ChangeinInsuranceFundsCashFlowStatement:
        """The increase or decrease between periods of the insurance funds."""
        ...

    @property
    def ChangeinInvestmentContractLiabilities(self) -> QuantConnect.Data.Fundamental.ChangeinInvestmentContractLiabilitiesCashFlowStatement:
        """The increase or decrease between periods of the investment contract liabilities."""
        ...

    @property
    def ChangeinInsuranceContractLiabilities(self) -> QuantConnect.Data.Fundamental.ChangeinInsuranceContractLiabilitiesCashFlowStatement:
        """The increase or decrease between periods of the insurance contract liabilities."""
        ...

    @property
    def ProvisionandWriteOffofAssets(self) -> QuantConnect.Data.Fundamental.ProvisionandWriteOffofAssetsCashFlowStatement:
        """A non-cash adjustment for total provision and write off on assets & liabilities."""
        ...

    @property
    def ReceiptsfromCustomers(self) -> QuantConnect.Data.Fundamental.ReceiptsfromCustomersCashFlowStatement:
        """Payment received from customers in the Direct Cash Flow."""
        ...

    @property
    def ReceiptsfromGovernmentGrants(self) -> QuantConnect.Data.Fundamental.ReceiptsfromGovernmentGrantsCashFlowStatement:
        """Cash received from governments in the form of grants in the Direct Cash Flow."""
        ...

    @property
    def MinorityInterest(self) -> QuantConnect.Data.Fundamental.MinorityInterestCashFlowStatement:
        """Amount of net income (loss) for the period allocated to non-controlling shareholders, partners, or other equity holders in one or more of the entities included."""
        ...

    @property
    def CapExReported(self) -> QuantConnect.Data.Fundamental.CapExReportedCashFlowStatement:
        """Capital expenditure, capitalized software development cost, maintenance capital expenditure, etc. as reported by the company."""
        ...

    @property
    def CashReceiptsfromTaxRefunds(self) -> QuantConnect.Data.Fundamental.CashReceiptsfromTaxRefundsCashFlowStatement:
        """Cash received as refunds from tax authorities in operating cash flow, using the direct method"""
        ...

    @property
    def CashReceiptsfromDepositsbyBanksandCustomers(self) -> QuantConnect.Data.Fundamental.CashReceiptsfromDepositsbyBanksandCustomersCashFlowStatement:
        """Cash received from banks and customer deposits in operating cash flow, using the direct method. This item is usually only available for bank industry"""
        ...

    @property
    def CashReceiptsfromLoans(self) -> QuantConnect.Data.Fundamental.CashReceiptsfromLoansCashFlowStatement:
        """Cash received from loans in operating cash flow, using the direct method. This item is usually only available for bank industry"""
        ...

    @property
    def CashReceiptsfromSecuritiesRelatedActivities(self) -> QuantConnect.Data.Fundamental.CashReceiptsfromSecuritiesRelatedActivitiesCashFlowStatement:
        """Cash received from the trading of securities in operating cash flow, using the direct method. This item is usually only available for bank and insurance industries"""
        ...

    @property
    def CashReceiptsfromFeesandCommissions(self) -> QuantConnect.Data.Fundamental.CashReceiptsfromFeesandCommissionsCashFlowStatement:
        """Cash received from agency fees and commissions in operating cash flow, using the direct method. This item is usually available for bank and insurance industries"""
        ...

    @property
    def CashPaymentsforDepositsbyBanksandCustomers(self) -> QuantConnect.Data.Fundamental.CashPaymentsforDepositsbyBanksandCustomersCashFlowStatement:
        """Cash paid for deposits by banks and customers in operating cash flow, using the direct method. This item is usually only available for bank industry"""
        ...

    @property
    def CashPaymentsforLoans(self) -> QuantConnect.Data.Fundamental.CashPaymentsforLoansCashFlowStatement:
        """Cash paid for loans in operating cash flow, using the direct method. This item is usually only available for bank industry"""
        ...

    @property
    def InterestandCommissionPaid(self) -> QuantConnect.Data.Fundamental.InterestandCommissionPaidCashFlowStatement:
        """Cash paid for interest and commission in operating cash flow, using the direct method"""
        ...

    @property
    def AllTaxesPaid(self) -> QuantConnect.Data.Fundamental.AllTaxesPaidCashFlowStatement:
        """Cash paid to tax authorities in operating cash flow, using the direct method"""
        ...

    @property
    def CashReceivedfromInsuranceActivities(self) -> QuantConnect.Data.Fundamental.CashReceivedfromInsuranceActivitiesCashFlowStatement:
        """Cash received from insurance activities in operating cash flow, using the direct method. This item is usually only available for insurance industry"""
        ...

    @property
    def PremiumReceived(self) -> QuantConnect.Data.Fundamental.PremiumReceivedCashFlowStatement:
        """Cash received from premium income in operating cash flow, using the direct method. This item is usually only available for insurance industry"""
        ...

    @property
    def ReinsuranceandOtherRecoveriesReceived(self) -> QuantConnect.Data.Fundamental.ReinsuranceandOtherRecoveriesReceivedCashFlowStatement:
        """Cash received from reinsurance income or other recoveries income in operating cash flow, using the direct method. This item is usually only available for insurance industry"""
        ...

    @property
    def PolicyholderDepositInvestmentReceived(self) -> QuantConnect.Data.Fundamental.PolicyholderDepositInvestmentReceivedCashFlowStatement:
        """Cash received from policyholder deposit investment activities in operating cash flow, using the direct method. This item is usually only available for insurance industry"""
        ...

    @property
    def CashPaidforInsuranceActivities(self) -> QuantConnect.Data.Fundamental.CashPaidforInsuranceActivitiesCashFlowStatement:
        """Cash paid out for insurance activities during the period in operating cash flow, using the direct method. This item is usually only available for insurance industry"""
        ...

    @property
    def ClaimsPaid(self) -> QuantConnect.Data.Fundamental.ClaimsPaidCashFlowStatement:
        """Cash paid out for claims by a insurance company during the period in operating cash flow, using the direct method. This item is usually only available for insurance industry"""
        ...

    @property
    def CommissionPaid(self) -> QuantConnect.Data.Fundamental.CommissionPaidCashFlowStatement:
        """Cash paid for commissions in operating cash flow, using the direct method"""
        ...

    @property
    def CashPaidtoReinsurers(self) -> QuantConnect.Data.Fundamental.CashPaidtoReinsurersCashFlowStatement:
        """Cash paid out to reinsurers in operating cash flow, using the direct method. This item is usually only available for insurance industry"""
        ...

    @property
    def OtherUnderwritingExpensesPaid(self) -> QuantConnect.Data.Fundamental.OtherUnderwritingExpensesPaidCashFlowStatement:
        """Cash paid out for underwriting expenses, such as the acquisition of new and renewal insurance contracts, in operating cash flow, using the direct method. This item is usually only available for insurance industry"""
        ...

    @property
    def CashDividendsForMinorities(self) -> QuantConnect.Data.Fundamental.CashDividendsForMinoritiesCashFlowStatement:
        """Cash Distribution of earnings to Minority Stockholders."""
        ...

    @property
    def CashGeneratedfromOperatingActivities(self) -> QuantConnect.Data.Fundamental.CashGeneratedfromOperatingActivitiesCashFlowStatement:
        """The net cash from an entity's operating activities before real cash inflow or outflow for Dividend, Interest, Tax, or other unclassified operating activities."""
        ...

    @property
    def FundFromOperation(self) -> QuantConnect.Data.Fundamental.FundFromOperationCashFlowStatement:
        """Funds from operations; populated only for real estate investment trusts (REITs), defined as the sum of net income, gain/loss (realized and unrealized) on investment securities, asset impairment charge, depreciation and amortization and gain/ loss on the sale of business and property plant and equipment."""
        ...

    @property
    def NetInvestmentPropertiesPurchaseAndSale(self) -> QuantConnect.Data.Fundamental.NetInvestmentPropertiesPurchaseAndSaleCashFlowStatement:
        """Net increase or decrease in cash due to purchases or sales of investment properties during the accounting period."""
        ...

    @property
    def PurchaseOfInvestmentProperties(self) -> QuantConnect.Data.Fundamental.PurchaseOfInvestmentPropertiesCashFlowStatement:
        """Cash outflow for purchases of investment properties during the accounting period."""
        ...

    @property
    def SaleOfInvestmentProperties(self) -> QuantConnect.Data.Fundamental.SaleOfInvestmentPropertiesCashFlowStatement:
        """Cash inflow from sale of investment properties during the accounting period."""
        ...

    @property
    def OtherCashAdjustIncludedIntoChangeinCash(self) -> QuantConnect.Data.Fundamental.OtherCashAdjustIncludedIntoChangeinCashCashFlowStatement:
        """Other cash adjustments included in change in cash not categorized above."""
        ...

    @property
    def OtherCashAdjustExcludeFromChangeinCash(self) -> QuantConnect.Data.Fundamental.OtherCashAdjustExcludeFromChangeinCashCashFlowStatement:
        """Other changes to cash and cash equivalents during the accounting period."""
        ...

    @property
    def ChangeinCashSupplementalAsReported(self) -> QuantConnect.Data.Fundamental.ChangeinCashSupplementalAsReportedCashFlowStatement:
        """The change in cash flow from the previous period to the current, as reported by the company, may be the same or not the same as Morningstar's standardized definition. It is a supplemental value which would be reported outside consolidated statements."""
        ...

    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...


class FinancialStatements(ReusuableCLRObject):
    """Definition of the FinancialStatements class"""

    @property
    def PeriodEndingDate(self) -> QuantConnect.Data.Fundamental.FinancialStatementsPeriodEndingDate:
        """The exact date that is given in the financial statements for each quarter's end."""
        ...

    @property
    def FileDate(self) -> QuantConnect.Data.Fundamental.FinancialStatementsFileDate:
        """Specific date on which a company released its filing to the public."""
        ...

    @property
    def AccessionNumber(self) -> QuantConnect.Data.Fundamental.FinancialStatementsAccessionNumber:
        """The accession number is a unique number that EDGAR assigns to each submission as the submission is received."""
        ...

    @property
    def FormType(self) -> QuantConnect.Data.Fundamental.FinancialStatementsFormType:
        """The type of filing of the report: for instance, 10-K (annual report) or 10-Q (quarterly report)."""
        ...

    @property
    def PeriodAuditor(self) -> QuantConnect.Data.Fundamental.PeriodAuditor:
        """The name of the auditor that performed the financial statement audit for the given period."""
        ...

    @property
    def AuditorReportStatus(self) -> QuantConnect.Data.Fundamental.AuditorReportStatus:
        """Auditor opinion code will be one of the following for each annual period: Code Meaning UQ Unqualified Opinion UE Unqualified Opinion with Explanation QM Qualified - Due to change in accounting method QL Qualified - Due to litigation OT Qualified Opinion - Other AO Adverse Opinion DS Disclaim an opinion UA Unaudited"""
        ...

    @property
    def InventoryValuationMethod(self) -> QuantConnect.Data.Fundamental.InventoryValuationMethod:
        """Which method of inventory valuation was used - LIFO, FIFO, Average, Standard costs, Net realizable value, Others, LIFO and FIFO, FIFO and Average, FIFO and other, LIFO and Average, LIFO and other, Average and other, 3 or more methods, None"""
        ...

    @property
    def NumberOfShareHolders(self) -> QuantConnect.Data.Fundamental.NumberOfShareHolders:
        """The number of shareholders on record"""
        ...

    @property
    def PeriodType(self) -> QuantConnect.Data.Fundamental.FinancialStatementsPeriodType:
        """The nature of the period covered by an individual set of financial results. The output can be: Quarter, Semi-annual or Annual. Assuming a 12-month fiscal year, quarter typically covers a three-month period, semi-annual a six-month period, and annual a twelve-month period. Annual could cover results collected either from preliminary results or an annual report"""
        ...

    @property
    def TotalRiskBasedCapital(self) -> QuantConnect.Data.Fundamental.TotalRiskBasedCapital:
        """The sum of Tier 1 and Tier 2 Capital. Tier 1 capital consists of common shareholders equity, perpetual preferred shareholders equity with non-cumulative dividends, retained earnings, and minority interests in the equity accounts of consolidated subsidiaries. Tier 2 capital consists of subordinated debt, intermediate-term preferred stock, cumulative and long-term preferred stock, and a portion of a bank's allowance for loan and lease losses."""
        ...

    @property
    def IncomeStatement(self) -> QuantConnect.Data.Fundamental.IncomeStatement:
        """The instance of the IncomeStatement class"""
        ...

    @property
    def BalanceSheet(self) -> QuantConnect.Data.Fundamental.BalanceSheet:
        """The instance of the BalanceSheet class"""
        ...

    @property
    def CashFlowStatement(self) -> QuantConnect.Data.Fundamental.CashFlowStatement:
        """The instance of the CashFlowStatement class"""
        ...

    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...


class EarningReportsPeriodEndingDate(QuantConnect.Data.Fundamental.MultiPeriodField[datetime.datetime]):
    """The exact date that is given in the financial statements for each quarter's end."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> datetime.datetime:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> datetime.datetime:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> datetime.datetime:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> datetime.datetime:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> datetime.datetime:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> datetime.datetime:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> datetime.datetime:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> datetime.datetime:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, datetime.datetime]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class EarningReportsFileDate(QuantConnect.Data.Fundamental.MultiPeriodField[datetime.datetime]):
    """Specific date on which a company released its filing to the public."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> datetime.datetime:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> datetime.datetime:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> datetime.datetime:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> datetime.datetime:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> datetime.datetime:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> datetime.datetime:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> datetime.datetime:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> datetime.datetime:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, datetime.datetime]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class EarningReportsAccessionNumber(QuantConnect.Data.Fundamental.MultiPeriodField[str]):
    """The accession number is a unique number that EDGAR assigns to each submission as the submission is received."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> str:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> str:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> str:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> str:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> str:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> str:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> str:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, str]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class EarningReportsFormType(QuantConnect.Data.Fundamental.MultiPeriodField[str]):
    """The type of filing of the report: for instance, 10-K (annual report) or 10-Q (quarterly report)."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> str:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> str:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> str:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> str:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> str:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> str:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> str:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> str:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, str]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class EarningReportsPeriodType(QuantConnect.Data.Fundamental.MultiPeriodField[str]):
    """The nature of the period covered by an individual set of financial results. The output can be: Quarter, Semi-annual or Annual. Assuming a 12-month fiscal year, quarter typically covers a three-month period, semi-annual a six-month period, and annual a twelve-month period. Annual could cover results collected either from preliminary results or an annual report"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> str:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> str:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> str:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> str:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> str:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> str:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> str:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> str:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, str]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class BasicContinuousOperations(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Basic EPS from Continuing Operations is the earnings from continuing operations reported by the company divided by the weighted average number of common shares outstanding."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class BasicDiscontinuousOperations(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Basic EPS from Discontinued Operations is the earnings from discontinued operations reported by the company divided by the weighted average number of common shares outstanding. This only includes gain or loss from discontinued operations."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class BasicExtraordinary(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Basic EPS from the Extraordinary Gains/Losses is the earnings attributable to the gains or losses (during the reporting period) from extraordinary items divided by the weighted average number of common shares outstanding."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class BasicAccountingChange(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Basic EPS from the Cumulative Effect of Accounting Change is the earnings attributable to the accounting change (during the reporting period) divided by the weighted average number of common shares outstanding."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class BasicEPS(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Basic EPS is the bottom line net income divided by the weighted average number of common shares outstanding."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DilutedContinuousOperations(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Diluted EPS from Continuing Operations is the earnings from continuing operations divided by the common shares outstanding adjusted for the assumed conversion of all potentially dilutive securities. Securities having a dilutive effect may include convertible debentures, warrants, options, and convertible preferred stock."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DilutedDiscontinuousOperations(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Diluted EPS from Discontinued Operations is the earnings from discontinued operations divided by the common shares outstanding adjusted for the assumed conversion of all potentially dilutive securities. Securities having a dilutive effect may include convertible debentures, warrants, options, and convertible preferred stock. This only includes gain or loss from discontinued operations."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DilutedExtraordinary(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Diluted EPS from Extraordinary Gain/Losses is the gain or loss from extraordinary items divided by the common shares outstanding adjusted for the assumed conversion of all potentially dilutive securities. Securities having a dilutive effect may include convertible debentures, warrants, options, and convertible preferred stock."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DilutedAccountingChange(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Diluted EPS from Cumulative Effect Accounting Changes is the earnings from accounting changes (in the reporting period) divided by the common shares outstanding adjusted for the assumed conversion of all potentially dilutive securities. Securities having a dilutive effect may include convertible debentures, warrants, options, and convertible preferred stock."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DilutedEPS(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Diluted EPS is the bottom line net income divided by the common shares outstanding adjusted for the assumed conversion of all potentially dilutive securities. Securities having a dilutive effect may include convertible debentures, warrants, options, and convertible preferred stock. This value will be derived when not reported for the fourth quarter and will be less than or equal to Basic EPS."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class BasicAverageShares(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The shares outstanding used to calculate Basic EPS, which is the weighted average common share outstanding through the whole accounting PeriodAsByte. Note: If Basic Average Shares are not presented by the firm in the Income Statement, this data point will be null."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DilutedAverageShares(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The shares outstanding used to calculate the diluted EPS, assuming the conversion of all convertible securities and the exercise of warrants or stock options. It is the weighted average diluted share outstanding through the whole accounting PeriodAsByte. Note: If Diluted Average Shares are not presented by the firm in the Income Statement and Basic Average Shares are presented, Diluted Average Shares will equal Basic Average Shares. However, if neither value is presented by the firm, Diluted Average Shares will be null."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DividendPerShare(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The amount of dividend that a stockholder will receive for each share of stock held. It can be calculated by taking the total amount of dividends paid and dividing it by the total shares outstanding. Dividend per share = total dividend payment/total number of outstanding shares"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class BasicEPSOtherGainsLosses(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Basic EPS from the Other Gains/Losses is the earnings attributable to the other gains/losses (during the reporting period) divided by the weighted average number of common shares outstanding."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ContinuingAndDiscontinuedBasicEPS(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Basic EPS from Continuing Operations plus Basic EPS from Discontinued Operations."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TaxLossCarryforwardBasicEPS(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The earnings attributable to the tax loss carry forward (during the reporting period)."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DilutedEPSOtherGainsLosses(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The earnings from gains and losses (in the reporting period) divided by the common shares outstanding adjusted for the assumed conversion of all potentially dilutive securities. Securities having a dilutive effect may include convertible debentures, warrants, options, convertible preferred stock, etc."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ContinuingAndDiscontinuedDilutedEPS(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Diluted EPS from Continuing Operations plus Diluted EPS from Discontinued Operations."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TaxLossCarryforwardDilutedEPS(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The earnings from any tax loss carry forward (in the reporting period)."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NormalizedBasicEPS(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The basic normalized earnings per share. Normalized EPS removes onetime and unusual items from EPS, to provide investors with a more accurate measure of the company's true earnings. Normalized Earnings / Basic Weighted Average Shares Outstanding."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NormalizedDilutedEPS(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The diluted normalized earnings per share. Normalized EPS removes onetime and unusual items from EPS, to provide investors with a more accurate measure of the company's true earnings. Normalized Earnings / Diluted Weighted Average Shares Outstanding."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalDividendPerShare(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Total Dividend Per Share is cash dividends and special cash dividends paid per share over a certain period of time."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ReportedNormalizedBasicEPS(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Normalized Basic EPS as reported by the company in the financial statements."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ReportedNormalizedDilutedEPS(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Normalized Diluted EPS as reported by the company in the financial statements."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DividendCoverageRatio(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Reflects a firm's capacity to pay a dividend, and is defined as Earnings Per Share / Dividend Per Share"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def TwelveMonths(self) -> float:
        """Gets/sets the TwelveMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class EarningReports(ReusuableCLRObject):
    """Definition of the EarningReports class"""

    @property
    def PeriodEndingDate(self) -> QuantConnect.Data.Fundamental.EarningReportsPeriodEndingDate:
        """The exact date that is given in the financial statements for each quarter's end."""
        ...

    @property
    def FileDate(self) -> QuantConnect.Data.Fundamental.EarningReportsFileDate:
        """Specific date on which a company released its filing to the public."""
        ...

    @property
    def AccessionNumber(self) -> QuantConnect.Data.Fundamental.EarningReportsAccessionNumber:
        """The accession number is a unique number that EDGAR assigns to each submission as the submission is received."""
        ...

    @property
    def FormType(self) -> QuantConnect.Data.Fundamental.EarningReportsFormType:
        """The type of filing of the report: for instance, 10-K (annual report) or 10-Q (quarterly report)."""
        ...

    @property
    def PeriodType(self) -> QuantConnect.Data.Fundamental.EarningReportsPeriodType:
        """The nature of the period covered by an individual set of financial results. The output can be: Quarter, Semi-annual or Annual. Assuming a 12-month fiscal year, quarter typically covers a three-month period, semi-annual a six-month period, and annual a twelve-month period. Annual could cover results collected either from preliminary results or an annual report"""
        ...

    @property
    def BasicContinuousOperations(self) -> QuantConnect.Data.Fundamental.BasicContinuousOperations:
        """Basic EPS from Continuing Operations is the earnings from continuing operations reported by the company divided by the weighted average number of common shares outstanding."""
        ...

    @property
    def BasicDiscontinuousOperations(self) -> QuantConnect.Data.Fundamental.BasicDiscontinuousOperations:
        """Basic EPS from Discontinued Operations is the earnings from discontinued operations reported by the company divided by the weighted average number of common shares outstanding. This only includes gain or loss from discontinued operations."""
        ...

    @property
    def BasicExtraordinary(self) -> QuantConnect.Data.Fundamental.BasicExtraordinary:
        """Basic EPS from the Extraordinary Gains/Losses is the earnings attributable to the gains or losses (during the reporting period) from extraordinary items divided by the weighted average number of common shares outstanding."""
        ...

    @property
    def BasicAccountingChange(self) -> QuantConnect.Data.Fundamental.BasicAccountingChange:
        """Basic EPS from the Cumulative Effect of Accounting Change is the earnings attributable to the accounting change (during the reporting period) divided by the weighted average number of common shares outstanding."""
        ...

    @property
    def BasicEPS(self) -> QuantConnect.Data.Fundamental.BasicEPS:
        """Basic EPS is the bottom line net income divided by the weighted average number of common shares outstanding."""
        ...

    @property
    def DilutedContinuousOperations(self) -> QuantConnect.Data.Fundamental.DilutedContinuousOperations:
        """Diluted EPS from Continuing Operations is the earnings from continuing operations divided by the common shares outstanding adjusted for the assumed conversion of all potentially dilutive securities. Securities having a dilutive effect may include convertible debentures, warrants, options, and convertible preferred stock."""
        ...

    @property
    def DilutedDiscontinuousOperations(self) -> QuantConnect.Data.Fundamental.DilutedDiscontinuousOperations:
        """Diluted EPS from Discontinued Operations is the earnings from discontinued operations divided by the common shares outstanding adjusted for the assumed conversion of all potentially dilutive securities. Securities having a dilutive effect may include convertible debentures, warrants, options, and convertible preferred stock. This only includes gain or loss from discontinued operations."""
        ...

    @property
    def DilutedExtraordinary(self) -> QuantConnect.Data.Fundamental.DilutedExtraordinary:
        """Diluted EPS from Extraordinary Gain/Losses is the gain or loss from extraordinary items divided by the common shares outstanding adjusted for the assumed conversion of all potentially dilutive securities. Securities having a dilutive effect may include convertible debentures, warrants, options, and convertible preferred stock."""
        ...

    @property
    def DilutedAccountingChange(self) -> QuantConnect.Data.Fundamental.DilutedAccountingChange:
        """Diluted EPS from Cumulative Effect Accounting Changes is the earnings from accounting changes (in the reporting period) divided by the common shares outstanding adjusted for the assumed conversion of all potentially dilutive securities. Securities having a dilutive effect may include convertible debentures, warrants, options, and convertible preferred stock."""
        ...

    @property
    def DilutedEPS(self) -> QuantConnect.Data.Fundamental.DilutedEPS:
        """Diluted EPS is the bottom line net income divided by the common shares outstanding adjusted for the assumed conversion of all potentially dilutive securities. Securities having a dilutive effect may include convertible debentures, warrants, options, and convertible preferred stock. This value will be derived when not reported for the fourth quarter and will be less than or equal to Basic EPS."""
        ...

    @property
    def BasicAverageShares(self) -> QuantConnect.Data.Fundamental.BasicAverageShares:
        """The shares outstanding used to calculate Basic EPS, which is the weighted average common share outstanding through the whole accounting period. Note: If Basic Average Shares are not presented by the firm in the Income Statement, this data point will be null."""
        ...

    @property
    def DilutedAverageShares(self) -> QuantConnect.Data.Fundamental.DilutedAverageShares:
        """The shares outstanding used to calculate the diluted EPS, assuming the conversion of all convertible securities and the exercise of warrants or stock options. It is the weighted average diluted share outstanding through the whole accounting period. Note: If Diluted Average Shares are not presented by the firm in the Income Statement and Basic Average Shares are presented, Diluted Average Shares will equal Basic Average Shares. However, if neither value is presented by the firm, Diluted Average Shares will be null."""
        ...

    @property
    def DividendPerShare(self) -> QuantConnect.Data.Fundamental.DividendPerShare:
        """The amount of dividend that a stockholder will receive for each share of stock held. It can be calculated by taking the total amount of dividends paid and dividing it by the total shares outstanding. Dividend per share = total dividend payment/total number of outstanding shares"""
        ...

    @property
    def BasicEPSOtherGainsLosses(self) -> QuantConnect.Data.Fundamental.BasicEPSOtherGainsLosses:
        """Basic EPS from the Other Gains/Losses is the earnings attributable to the other gains/losses (during the reporting period) divided by the weighted average number of common shares outstanding."""
        ...

    @property
    def ContinuingAndDiscontinuedBasicEPS(self) -> QuantConnect.Data.Fundamental.ContinuingAndDiscontinuedBasicEPS:
        """Basic EPS from Continuing Operations plus Basic EPS from Discontinued Operations."""
        ...

    @property
    def TaxLossCarryforwardBasicEPS(self) -> QuantConnect.Data.Fundamental.TaxLossCarryforwardBasicEPS:
        """The earnings attributable to the tax loss carry forward (during the reporting period)."""
        ...

    @property
    def DilutedEPSOtherGainsLosses(self) -> QuantConnect.Data.Fundamental.DilutedEPSOtherGainsLosses:
        """The earnings from gains and losses (in the reporting period) divided by the common shares outstanding adjusted for the assumed conversion of all potentially dilutive securities. Securities having a dilutive effect may include convertible debentures, warrants, options, convertible preferred stock, etc."""
        ...

    @property
    def ContinuingAndDiscontinuedDilutedEPS(self) -> QuantConnect.Data.Fundamental.ContinuingAndDiscontinuedDilutedEPS:
        """Diluted EPS from Continuing Operations plus Diluted EPS from Discontinued Operations."""
        ...

    @property
    def TaxLossCarryforwardDilutedEPS(self) -> QuantConnect.Data.Fundamental.TaxLossCarryforwardDilutedEPS:
        """The earnings from any tax loss carry forward (in the reporting period)."""
        ...

    @property
    def NormalizedBasicEPS(self) -> QuantConnect.Data.Fundamental.NormalizedBasicEPS:
        """The basic normalized earnings per share. Normalized EPS removes onetime and unusual items from EPS, to provide investors with a more accurate measure of the company's true earnings. Normalized Earnings / Basic Weighted Average Shares Outstanding."""
        ...

    @property
    def NormalizedDilutedEPS(self) -> QuantConnect.Data.Fundamental.NormalizedDilutedEPS:
        """The diluted normalized earnings per share. Normalized EPS removes onetime and unusual items from EPS, to provide investors with a more accurate measure of the company's true earnings. Normalized Earnings / Diluted Weighted Average Shares Outstanding."""
        ...

    @property
    def TotalDividendPerShare(self) -> QuantConnect.Data.Fundamental.TotalDividendPerShare:
        """Total Dividend Per Share is cash dividends and special cash dividends paid per share over a certain period of time."""
        ...

    @property
    def ReportedNormalizedBasicEPS(self) -> QuantConnect.Data.Fundamental.ReportedNormalizedBasicEPS:
        """Normalized Basic EPS as reported by the company in the financial statements."""
        ...

    @property
    def ReportedNormalizedDilutedEPS(self) -> QuantConnect.Data.Fundamental.ReportedNormalizedDilutedEPS:
        """Normalized Diluted EPS as reported by the company in the financial statements."""
        ...

    @property
    def DividendCoverageRatio(self) -> QuantConnect.Data.Fundamental.DividendCoverageRatio:
        """Reflects a firm's capacity to pay a dividend, and is defined as Earnings Per Share / Dividend Per Share"""
        ...

    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...


class RevenueGrowth(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The growth in the company's revenue on a percentage basis. Morningstar calculates the growth percentage based on the underlying revenue data reported in the Income Statement within the company filings or reports."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeYears(self) -> float:
        """Gets/sets the ThreeYears period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OperationIncomeGrowth(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The growth in the company's operating income on a percentage basis. Morningstar calculates the growth percentage based on the underlying operating income data reported in the Income Statement within the company filings or reports."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeYears(self) -> float:
        """Gets/sets the ThreeYears period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetIncomeGrowth(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The growth in the company's net income on a percentage basis. Morningstar calculates the growth percentage based on the underlying net income data reported in the Income Statement within the company filings or reports."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeYears(self) -> float:
        """Gets/sets the ThreeYears period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetIncomeContOpsGrowth(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The growth in the company's net income from continuing operations on a percentage basis. Morningstar calculates the growth percentage based on the underlying net income from continuing operations data reported in the Income Statement within the company filings or reports. This figure represents the rate of net income growth for parts of the business that will continue to generate revenue in the future."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeYears(self) -> float:
        """Gets/sets the ThreeYears period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CFOGrowth(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The growth in the company's cash flow from operations on a percentage basis. Morningstar calculates the growth percentage based on the underlying cash flow from operations data reported in the Cash Flow Statement within the company filings or reports."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeYears(self) -> float:
        """Gets/sets the ThreeYears period value for the field"""
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FCFGrowth(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The growth in the company's free cash flow on a percentage basis. Morningstar calculates the growth percentage based on the underlying cash flow from operations and capital expenditures data reported in the Cash Flow Statement within the company filings or reports: Free Cash Flow = Cash flow from operations - Capital Expenditures."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeYears(self) -> float:
        """Gets/sets the ThreeYears period value for the field"""
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OperationRevenueGrowth3MonthAvg(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The growth in the company's operating revenue on a percentage basis. Morningstar calculates the growth percentage based on the underlying operating revenue data reported in the Income Statement within the company filings or reports."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeYears(self) -> float:
        """Gets/sets the ThreeYears period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class GrossMargin(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Refers to the ratio of gross profit to revenue. Morningstar calculates the ratio by using the underlying data reported in the company filings or reports: (Revenue - Cost of Goods Sold) / Revenue."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OperationMargin(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Refers to the ratio of operating income to revenue. Morningstar calculates the ratio by using the underlying data reported in the company filings or reports: Operating Income / Revenue."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PretaxMargin(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Refers to the ratio of pretax income to revenue. Morningstar calculates the ratio by using the underlying data reported in the company filings or reports: Pretax Income / Revenue."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetMargin(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Refers to the ratio of net income to revenue. Morningstar calculates the ratio by using the underlying data reported in the company filings or reports: Net Income / Revenue."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TaxRate(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Refers to the ratio of tax provision to pretax income. Morningstar calculates the ratio by using the underlying data reported in the company filings or reports: Tax Provision / Pretax Income. [Note: Valid only when positive pretax income, and positive tax expense (not tax benefit)]"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class EBITMargin(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Refers to the ratio of earnings before interest and taxes to revenue. Morningstar calculates the ratio by using the underlying data reported in the company filings or reports: EBIT / Revenue."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class EBITDAMargin(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Refers to the ratio of earnings before interest, taxes and depreciation and amortization to revenue. Morningstar calculates the ratio by using the underlying data reported in the company filings or reports: EBITDA / Revenue."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class SalesPerEmployee(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Refers to the ratio of Revenue to Employees. Morningstar calculates the ratio by using the underlying data reported in the company filings or reports: Revenue / Employee Number."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CurrentRatio(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Refers to the ratio of Current Assets to Current Liabilities. Morningstar calculates the ratio by using the underlying data reported in the Balance Sheet within the company filings or reports: Current Assets / Current Liabilities."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class QuickRatio(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Refers to the ratio of liquid assets to Current Liabilities. Morningstar calculates the ratio by using the underlying data reported in the Balance Sheet within the company filings or reports:(Cash, Cash Equivalents, and Short Term Investments + Receivables ) / Current Liabilities."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class LongTermDebtTotalCapitalRatio(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Refers to the ratio of Long Term Debt to Total Capital. Morningstar calculates the ratio by using the underlying data reported in the Balance Sheet within the company filings or reports: Long-Term Debt And Capital Lease Obligation / (Long-Term Debt And Capital Lease Obligation + Total Shareholder's Equity)"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InterestCoverage(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Refers to the ratio of EBIT to Interest Expense. Morningstar calculates the ratio by using the underlying data reported in the Income Statement within the company filings or reports: EBIT / Interest Expense."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class LongTermDebtEquityRatio(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Refers to the ratio of Long Term Debt to Common Equity. Morningstar calculates the ratio by using the underlying data reported in the Balance Sheet within the company filings or reports: Long-Term Debt And Capital Lease Obligation / Common Equity. [Note: Common Equity = Total Shareholder's Equity - Preferred Stock]"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FinancialLeverage(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Refers to the ratio of Total Assets to Common Equity. Morningstar calculates the ratio by using the underlying data reported in the Balance Sheet within the company filings or reports: Total Assets / Common Equity. [Note: Common Equity = Total Shareholder's Equity - Preferred Stock]"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalDebtEquityRatio(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Refers to the ratio of Total Debt to Common Equity. Morningstar calculates the ratio by using the underlying data reported in the Balance Sheet within the company filings or reports: (Current Debt And Current Capital Lease Obligation + Long-Term Debt And Long-Term Capital Lease Obligation / Common Equity. [Note: Common Equity = Total Shareholder's Equity - Preferred Stock]"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NormalizedNetProfitMargin(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Normalized Income / Total Revenue. A measure of profitability of the company calculated by finding Normalized Net Profit as a percentage of Total Revenues."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DaysInSales(QuantConnect.Data.Fundamental.MultiPeriodField):
    """365 / Receivable Turnover"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DaysInInventory(QuantConnect.Data.Fundamental.MultiPeriodField):
    """365 / Inventory turnover"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DaysInPayment(QuantConnect.Data.Fundamental.MultiPeriodField):
    """365 / Payable turnover"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashConversionCycle(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Days In Inventory + Days In Sales - Days In Payment"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ReceivableTurnover(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Revenue / Average Accounts Receivables"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class InventoryTurnover(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cost Of Goods Sold / Average Inventory"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PaymentTurnover(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Cost of Goods Sold / Average Accounts Payables"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FixAssetsTuronver(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Revenue / Average PP&E"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AssetsTurnover(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Revenue / Average Total Assets"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ROE(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Net Income / Average Total Common Equity"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ROA(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Net Income / Average Total Assets"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ROIC(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Net Income / (Total Equity + Long-term Debt and Capital Lease Obligation + Short-term Debt and Capital Lease Obligation)"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FCFSalesRatio(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Free Cash flow / Revenue"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FCFNetIncomeRatio(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Free Cash Flow / Net Income"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CapExSalesRatio(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Capital Expenditure / Revenue"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DebttoAssets(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This is a leverage ratio used to determine how much debt (a sum of long term and current portion of debt) a company has on its balance sheet relative to total assets. This ratio examines the percent of the company that is financed by debt."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CommonEquityToAssets(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This is a financial ratio of common stock equity to total assets that indicates the relative proportion of equity used to finance a company's assets."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def OneMonth(self) -> float:
        """Gets/sets the OneMonth period value for the field"""
        ...

    @property
    def TwoMonths(self) -> float:
        """Gets/sets the TwoMonths period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def NineMonths(self) -> float:
        """Gets/sets the NineMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CapitalExpenditureAnnual5YrGrowth(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This is the compound annual growth rate of the company's capital spending over the last 5 years. Capital Spending is the sum of the Capital Expenditure items found in the Statement of Cash Flows."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeYears(self) -> float:
        """Gets/sets the ThreeYears period value for the field"""
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class GrossProfitAnnual5YrGrowth(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This is the compound annual growth rate of the company's Gross Profit over the last 5 years."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeYears(self) -> float:
        """Gets/sets the ThreeYears period value for the field"""
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class GrossMargin5YrAvg(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This is the simple average of the company's Annual Gross Margin over the last 5 years. Gross Margin is Total Revenue minus Cost of Goods Sold divided by Total Revenue and is expressed as a percentage."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PostTaxMargin5YrAvg(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This is the simple average of the company's Annual Post Tax Margin over the last 5 years. Post tax margin is Post tax divided by total revenue for the same PeriodAsByte."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class PreTaxMargin5YrAvg(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This is the simple average of the company's Annual Pre Tax Margin over the last 5 years. Pre tax margin is Pre tax divided by total revenue for the same PeriodAsByte."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ProfitMargin5YrAvg(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This is the simple average of the company's Annual Net Profit Margin over the last 5 years. Net profit margin is post tax income divided by total revenue for the same PeriodAsByte."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ROE5YrAvg(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This is the simple average of the company's ROE over the last 5 years. Return on equity reveals how much profit a company has earned in comparison to the total amount of shareholder equity found on the balance sheet."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ROA5YrAvg(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This is the simple average of the company's ROA over the last 5 years. Return on asset is calculated by dividing a company's annual earnings by its average total assets."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class AVG5YrsROIC(QuantConnect.Data.Fundamental.MultiPeriodField):
    """This is the simple average of the company's ROIC over the last 5 years. Return on invested capital is calculated by taking net operating profit after taxes and dividends and dividing by the total amount of capital invested and expressing the result as a percentage."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NormalizedROIC(QuantConnect.Data.Fundamental.MultiPeriodField):
    """[Normalized Income + (Interest Expense * (1-Tax Rate))] / Invested Capital"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def SixMonths(self) -> float:
        """Gets/sets the SixMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class RegressionGrowthOperatingRevenue5Years(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The five-year growth rate of operating revenue, calculated using regression analysis."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashRatio(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Indicates a company's short-term liquidity, defined as short term liquid investments (cash, cash equivalents, short term investments) divided by current liabilities."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashtoTotalAssets(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Represents the percentage of a company's total assets is in cash."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CapitalExpendituretoEBITDA(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Measures the amount a company is investing in its business relative to EBITDA generated in a given PeriodAsByte."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FCFtoCFO(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Indicates the percentage of a company's operating cash flow is free to be invested in its business after capital expenditures."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class StockholdersEquityGrowth(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The growth in the stockholder's equity on a percentage basis. Morningstar calculates the growth percentage based on the residual interest in the assets of the enterprise that remains after deducting its liabilities reported in the Balance Sheet within the company filings or reports."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeYears(self) -> float:
        """Gets/sets the ThreeYears period value for the field"""
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalAssetsGrowth(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The growth in the total assets on a percentage basis. Morningstar calculates the growth percentage based on the total assets reported in the Balance Sheet within the company filings or reports."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeYears(self) -> float:
        """Gets/sets the ThreeYears period value for the field"""
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalLiabilitiesGrowth(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The growth in the total liabilities on a percentage basis. Morningstar calculates the growth percentage based on the total liabilities reported in the Balance Sheet within the company filings or reports."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeYears(self) -> float:
        """Gets/sets the ThreeYears period value for the field"""
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class TotalDebtEquityRatioGrowth(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The growth in the company's total debt to equity ratio on a percentage basis. Morningstar calculates the growth percentage based on the total debt divided by the shareholder's equity reported in the Balance Sheet within the company filings or reports."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeYears(self) -> float:
        """Gets/sets the ThreeYears period value for the field"""
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashRatioGrowth(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The growth in the company's cash ratio on a percentage basis. Morningstar calculates the growth percentage based on the short term liquid investments (cash, cash equivalents, short term investments) divided by current liabilities reported in the Balance Sheet within the company filings or reports."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeYears(self) -> float:
        """Gets/sets the ThreeYears period value for the field"""
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class EBITDAGrowth(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The growth in the company's EBITDA on a percentage basis. Morningstar calculates the growth percentage based on the earnings minus expenses (excluding interest, tax, depreciation, and amortization expenses) reported in the Financial Statements within the company filings or reports."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeYears(self) -> float:
        """Gets/sets the ThreeYears period value for the field"""
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashFlowfromFinancingGrowth(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The growth in the company's cash flows from financing on a percentage basis. Morningstar calculates the growth percentage based on the financing cash flows reported in the Cash Flow Statement within the company filings or reports."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeYears(self) -> float:
        """Gets/sets the ThreeYears period value for the field"""
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CashFlowfromInvestingGrowth(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The growth in the company's cash flows from investing on a percentage basis. Morningstar calculates the growth percentage based on the cash flows from investing reported in the Cash Flow Statement within the company filings or reports."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeYears(self) -> float:
        """Gets/sets the ThreeYears period value for the field"""
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CapExGrowth(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The growth in the company's capital expenditures on a percentage basis. Morningstar calculates the growth percentage based on the capital expenditures reported in the Cash Flow Statement within the company filings or reports."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeYears(self) -> float:
        """Gets/sets the ThreeYears period value for the field"""
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class CurrentRatioGrowth(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The growth in the company's current ratio on a percentage basis. Morningstar calculates the growth percentage based on the current assets divided by current liabilities reported in the Balance Sheet within the company filings or reports."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeYears(self) -> float:
        """Gets/sets the ThreeYears period value for the field"""
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class WorkingCapitalTurnoverRatio(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Total revenue / working capital (current assets minus current liabilities)"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NetIncomePerEmployee(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Refers to the ratio of Net Income to Employees. Morningstar calculates the ratio by using the underlying data reported in the company filings or reports: Net Income / Employee Number."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class SolvencyRatio(QuantConnect.Data.Fundamental.MultiPeriodField):
    """Measure of whether a company's cash flow is sufficient to meet its short-term and long-term debt requirements. The lower this ratio is, the greater the probability that the company will be in financial distress. Net Income + Depreciation, Depletion and Amortization/ average of annual Total Liabilities over the most recent two periods."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class ExpenseRatio(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A measure of operating performance for Insurance companies, as it shows the relationship between the premiums earned and administrative expenses related to claims such as fees and commissions. A number of 1 or lower is preferred, as this means the premiums exceed the expenses. Calculated as: (Deferred Policy Acquisition Amortization Expense+Fees and Commission Expense+Other Underwriting Expenses+Selling, General and Administrative) / Net Premiums Earned"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class LossRatio(QuantConnect.Data.Fundamental.MultiPeriodField):
    """A measure of operating performance for Insurance companies, as it shows the relationship between the premiums earned and the expenses related to claims. A number of 1 or lower is preferred, as this means the premiums exceed the expenses. Calculated as: Benefits, Claims and Loss Adjustment Expense, Net / Net Premiums Earned"""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class OperationRatios(ReusuableCLRObject):
    """Definition of the OperationRatios class"""

    @property
    def RevenueGrowth(self) -> QuantConnect.Data.Fundamental.RevenueGrowth:
        """The growth in the company's revenue on a percentage basis. Morningstar calculates the growth percentage based on the underlying revenue data reported in the Income Statement within the company filings or reports."""
        ...

    @property
    def OperationIncomeGrowth(self) -> QuantConnect.Data.Fundamental.OperationIncomeGrowth:
        """The growth in the company's operating income on a percentage basis. Morningstar calculates the growth percentage based on the underlying operating income data reported in the Income Statement within the company filings or reports."""
        ...

    @property
    def NetIncomeGrowth(self) -> QuantConnect.Data.Fundamental.NetIncomeGrowth:
        """The growth in the company's net income on a percentage basis. Morningstar calculates the growth percentage based on the underlying net income data reported in the Income Statement within the company filings or reports."""
        ...

    @property
    def NetIncomeContOpsGrowth(self) -> QuantConnect.Data.Fundamental.NetIncomeContOpsGrowth:
        """The growth in the company's net income from continuing operations on a percentage basis. Morningstar calculates the growth percentage based on the underlying net income from continuing operations data reported in the Income Statement within the company filings or reports. This figure represents the rate of net income growth for parts of the business that will continue to generate revenue in the future."""
        ...

    @property
    def CFOGrowth(self) -> QuantConnect.Data.Fundamental.CFOGrowth:
        """The growth in the company's cash flow from operations on a percentage basis. Morningstar calculates the growth percentage based on the underlying cash flow from operations data reported in the Cash Flow Statement within the company filings or reports."""
        ...

    @property
    def FCFGrowth(self) -> QuantConnect.Data.Fundamental.FCFGrowth:
        """The growth in the company's free cash flow on a percentage basis. Morningstar calculates the growth percentage based on the underlying cash flow from operations and capital expenditures data reported in the Cash Flow Statement within the company filings or reports: Free Cash Flow = Cash flow from operations - Capital Expenditures."""
        ...

    @property
    def OperationRevenueGrowth3MonthAvg(self) -> QuantConnect.Data.Fundamental.OperationRevenueGrowth3MonthAvg:
        """The growth in the company's operating revenue on a percentage basis. Morningstar calculates the growth percentage based on the underlying operating revenue data reported in the Income Statement within the company filings or reports."""
        ...

    @property
    def GrossMargin(self) -> QuantConnect.Data.Fundamental.GrossMargin:
        """Refers to the ratio of gross profit to revenue. Morningstar calculates the ratio by using the underlying data reported in the company filings or reports: (Revenue - Cost of Goods Sold) / Revenue."""
        ...

    @property
    def OperationMargin(self) -> QuantConnect.Data.Fundamental.OperationMargin:
        """Refers to the ratio of operating income to revenue. Morningstar calculates the ratio by using the underlying data reported in the company filings or reports: Operating Income / Revenue."""
        ...

    @property
    def PretaxMargin(self) -> QuantConnect.Data.Fundamental.PretaxMargin:
        """Refers to the ratio of pretax income to revenue. Morningstar calculates the ratio by using the underlying data reported in the company filings or reports: Pretax Income / Revenue."""
        ...

    @property
    def NetMargin(self) -> QuantConnect.Data.Fundamental.NetMargin:
        """Refers to the ratio of net income to revenue. Morningstar calculates the ratio by using the underlying data reported in the company filings or reports: Net Income / Revenue."""
        ...

    @property
    def TaxRate(self) -> QuantConnect.Data.Fundamental.TaxRate:
        """Refers to the ratio of tax provision to pretax income. Morningstar calculates the ratio by using the underlying data reported in the company filings or reports: Tax Provision / Pretax Income. [Note: Valid only when positive pretax income, and positive tax expense (not tax benefit)]"""
        ...

    @property
    def EBITMargin(self) -> QuantConnect.Data.Fundamental.EBITMargin:
        """Refers to the ratio of earnings before interest and taxes to revenue. Morningstar calculates the ratio by using the underlying data reported in the company filings or reports: EBIT / Revenue."""
        ...

    @property
    def EBITDAMargin(self) -> QuantConnect.Data.Fundamental.EBITDAMargin:
        """Refers to the ratio of earnings before interest, taxes and depreciation and amortization to revenue. Morningstar calculates the ratio by using the underlying data reported in the company filings or reports: EBITDA / Revenue."""
        ...

    @property
    def SalesPerEmployee(self) -> QuantConnect.Data.Fundamental.SalesPerEmployee:
        """Refers to the ratio of Revenue to Employees. Morningstar calculates the ratio by using the underlying data reported in the company filings or reports: Revenue / Employee Number."""
        ...

    @property
    def CurrentRatio(self) -> QuantConnect.Data.Fundamental.CurrentRatio:
        """Refers to the ratio of Current Assets to Current Liabilities. Morningstar calculates the ratio by using the underlying data reported in the Balance Sheet within the company filings or reports: Current Assets / Current Liabilities."""
        ...

    @property
    def QuickRatio(self) -> QuantConnect.Data.Fundamental.QuickRatio:
        """Refers to the ratio of liquid assets to Current Liabilities. Morningstar calculates the ratio by using the underlying data reported in the Balance Sheet within the company filings or reports:(Cash, Cash Equivalents, and Short Term Investments + Receivables ) / Current Liabilities."""
        ...

    @property
    def LongTermDebtTotalCapitalRatio(self) -> QuantConnect.Data.Fundamental.LongTermDebtTotalCapitalRatio:
        """Refers to the ratio of Long Term Debt to Total Capital. Morningstar calculates the ratio by using the underlying data reported in the Balance Sheet within the company filings or reports: Long-Term Debt And Capital Lease Obligation / (Long-Term Debt And Capital Lease Obligation + Total Shareholder's Equity)"""
        ...

    @property
    def InterestCoverage(self) -> QuantConnect.Data.Fundamental.InterestCoverage:
        """Refers to the ratio of EBIT to Interest Expense. Morningstar calculates the ratio by using the underlying data reported in the Income Statement within the company filings or reports: EBIT / Interest Expense."""
        ...

    @property
    def LongTermDebtEquityRatio(self) -> QuantConnect.Data.Fundamental.LongTermDebtEquityRatio:
        """Refers to the ratio of Long Term Debt to Common Equity. Morningstar calculates the ratio by using the underlying data reported in the Balance Sheet within the company filings or reports: Long-Term Debt And Capital Lease Obligation / Common Equity. [Note: Common Equity = Total Shareholder's Equity - Preferred Stock]"""
        ...

    @property
    def FinancialLeverage(self) -> QuantConnect.Data.Fundamental.FinancialLeverage:
        """Refers to the ratio of Total Assets to Common Equity. Morningstar calculates the ratio by using the underlying data reported in the Balance Sheet within the company filings or reports: Total Assets / Common Equity. [Note: Common Equity = Total Shareholder's Equity - Preferred Stock]"""
        ...

    @property
    def TotalDebtEquityRatio(self) -> QuantConnect.Data.Fundamental.TotalDebtEquityRatio:
        """Refers to the ratio of Total Debt to Common Equity. Morningstar calculates the ratio by using the underlying data reported in the Balance Sheet within the company filings or reports: (Current Debt And Current Capital Lease Obligation + Long-Term Debt And Long-Term Capital Lease Obligation / Common Equity. [Note: Common Equity = Total Shareholder's Equity - Preferred Stock]"""
        ...

    @property
    def NormalizedNetProfitMargin(self) -> QuantConnect.Data.Fundamental.NormalizedNetProfitMargin:
        """Normalized Income / Total Revenue. A measure of profitability of the company calculated by finding Normalized Net Profit as a percentage of Total Revenues."""
        ...

    @property
    def DaysInSales(self) -> QuantConnect.Data.Fundamental.DaysInSales:
        """365 / Receivable Turnover"""
        ...

    @property
    def DaysInInventory(self) -> QuantConnect.Data.Fundamental.DaysInInventory:
        """365 / Inventory turnover"""
        ...

    @property
    def DaysInPayment(self) -> QuantConnect.Data.Fundamental.DaysInPayment:
        """365 / Payable turnover"""
        ...

    @property
    def CashConversionCycle(self) -> QuantConnect.Data.Fundamental.CashConversionCycle:
        """Days In Inventory + Days In Sales - Days In Payment"""
        ...

    @property
    def ReceivableTurnover(self) -> QuantConnect.Data.Fundamental.ReceivableTurnover:
        """Revenue / Average Accounts Receivables"""
        ...

    @property
    def InventoryTurnover(self) -> QuantConnect.Data.Fundamental.InventoryTurnover:
        """Cost Of Goods Sold / Average Inventory"""
        ...

    @property
    def PaymentTurnover(self) -> QuantConnect.Data.Fundamental.PaymentTurnover:
        """Cost of Goods Sold / Average Accounts Payables"""
        ...

    @property
    def FixAssetsTuronver(self) -> QuantConnect.Data.Fundamental.FixAssetsTuronver:
        """Revenue / Average PP&E"""
        ...

    @property
    def AssetsTurnover(self) -> QuantConnect.Data.Fundamental.AssetsTurnover:
        """Revenue / Average Total Assets"""
        ...

    @property
    def ROE(self) -> QuantConnect.Data.Fundamental.ROE:
        """Net Income / Average Total Common Equity"""
        ...

    @property
    def ROA(self) -> QuantConnect.Data.Fundamental.ROA:
        """Net Income / Average Total Assets"""
        ...

    @property
    def ROIC(self) -> QuantConnect.Data.Fundamental.ROIC:
        """Net Income / (Total Equity + Long-term Debt and Capital Lease Obligation + Short-term Debt and Capital Lease Obligation)"""
        ...

    @property
    def FCFSalesRatio(self) -> QuantConnect.Data.Fundamental.FCFSalesRatio:
        """Free Cash flow / Revenue"""
        ...

    @property
    def FCFNetIncomeRatio(self) -> QuantConnect.Data.Fundamental.FCFNetIncomeRatio:
        """Free Cash Flow / Net Income"""
        ...

    @property
    def CapExSalesRatio(self) -> QuantConnect.Data.Fundamental.CapExSalesRatio:
        """Capital Expenditure / Revenue"""
        ...

    @property
    def DebttoAssets(self) -> QuantConnect.Data.Fundamental.DebttoAssets:
        """This is a leverage ratio used to determine how much debt (a sum of long term and current portion of debt) a company has on its balance sheet relative to total assets. This ratio examines the percent of the company that is financed by debt."""
        ...

    @property
    def CommonEquityToAssets(self) -> QuantConnect.Data.Fundamental.CommonEquityToAssets:
        """This is a financial ratio of common stock equity to total assets that indicates the relative proportion of equity used to finance a company's assets."""
        ...

    @property
    def CapitalExpenditureAnnual5YrGrowth(self) -> QuantConnect.Data.Fundamental.CapitalExpenditureAnnual5YrGrowth:
        """This is the compound annual growth rate of the company's capital spending over the last 5 years. Capital Spending is the sum of the Capital Expenditure items found in the Statement of Cash Flows."""
        ...

    @property
    def GrossProfitAnnual5YrGrowth(self) -> QuantConnect.Data.Fundamental.GrossProfitAnnual5YrGrowth:
        """This is the compound annual growth rate of the company's Gross Profit over the last 5 years."""
        ...

    @property
    def GrossMargin5YrAvg(self) -> QuantConnect.Data.Fundamental.GrossMargin5YrAvg:
        """This is the simple average of the company's Annual Gross Margin over the last 5 years. Gross Margin is Total Revenue minus Cost of Goods Sold divided by Total Revenue and is expressed as a percentage."""
        ...

    @property
    def PostTaxMargin5YrAvg(self) -> QuantConnect.Data.Fundamental.PostTaxMargin5YrAvg:
        """This is the simple average of the company's Annual Post Tax Margin over the last 5 years. Post tax margin is Post tax divided by total revenue for the same period."""
        ...

    @property
    def PreTaxMargin5YrAvg(self) -> QuantConnect.Data.Fundamental.PreTaxMargin5YrAvg:
        """This is the simple average of the company's Annual Pre Tax Margin over the last 5 years. Pre tax margin is Pre tax divided by total revenue for the same period."""
        ...

    @property
    def ProfitMargin5YrAvg(self) -> QuantConnect.Data.Fundamental.ProfitMargin5YrAvg:
        """This is the simple average of the company's Annual Net Profit Margin over the last 5 years. Net profit margin is post tax income divided by total revenue for the same period."""
        ...

    @property
    def ROE5YrAvg(self) -> QuantConnect.Data.Fundamental.ROE5YrAvg:
        """This is the simple average of the company's ROE over the last 5 years. Return on equity reveals how much profit a company has earned in comparison to the total amount of shareholder equity found on the balance sheet."""
        ...

    @property
    def ROA5YrAvg(self) -> QuantConnect.Data.Fundamental.ROA5YrAvg:
        """This is the simple average of the company's ROA over the last 5 years. Return on asset is calculated by dividing a company's annual earnings by its average total assets."""
        ...

    @property
    def AVG5YrsROIC(self) -> QuantConnect.Data.Fundamental.AVG5YrsROIC:
        """This is the simple average of the company's ROIC over the last 5 years. Return on invested capital is calculated by taking net operating profit after taxes and dividends and dividing by the total amount of capital invested and expressing the result as a percentage."""
        ...

    @property
    def NormalizedROIC(self) -> QuantConnect.Data.Fundamental.NormalizedROIC:
        """[Normalized Income + (Interest Expense * (1-Tax Rate))] / Invested Capital"""
        ...

    @property
    def RegressionGrowthOperatingRevenue5Years(self) -> QuantConnect.Data.Fundamental.RegressionGrowthOperatingRevenue5Years:
        """The five-year growth rate of operating revenue, calculated using regression analysis."""
        ...

    @property
    def CashRatio(self) -> QuantConnect.Data.Fundamental.CashRatio:
        """Indicates a company's short-term liquidity, defined as short term liquid investments (cash, cash equivalents, short term investments) divided by current liabilities."""
        ...

    @property
    def CashtoTotalAssets(self) -> QuantConnect.Data.Fundamental.CashtoTotalAssets:
        """Represents the percentage of a company's total assets is in cash."""
        ...

    @property
    def CapitalExpendituretoEBITDA(self) -> QuantConnect.Data.Fundamental.CapitalExpendituretoEBITDA:
        """Measures the amount a company is investing in its business relative to EBITDA generated in a given period."""
        ...

    @property
    def FCFtoCFO(self) -> QuantConnect.Data.Fundamental.FCFtoCFO:
        """Indicates the percentage of a company's operating cash flow is free to be invested in its business after capital expenditures."""
        ...

    @property
    def StockholdersEquityGrowth(self) -> QuantConnect.Data.Fundamental.StockholdersEquityGrowth:
        """The growth in the stockholder's equity on a percentage basis. Morningstar calculates the growth percentage based on the residual interest in the assets of the enterprise that remains after deducting its liabilities reported in the Balance Sheet within the company filings or reports."""
        ...

    @property
    def TotalAssetsGrowth(self) -> QuantConnect.Data.Fundamental.TotalAssetsGrowth:
        """The growth in the total assets on a percentage basis. Morningstar calculates the growth percentage based on the total assets reported in the Balance Sheet within the company filings or reports."""
        ...

    @property
    def TotalLiabilitiesGrowth(self) -> QuantConnect.Data.Fundamental.TotalLiabilitiesGrowth:
        """The growth in the total liabilities on a percentage basis. Morningstar calculates the growth percentage based on the total liabilities reported in the Balance Sheet within the company filings or reports."""
        ...

    @property
    def TotalDebtEquityRatioGrowth(self) -> QuantConnect.Data.Fundamental.TotalDebtEquityRatioGrowth:
        """The growth in the company's total debt to equity ratio on a percentage basis. Morningstar calculates the growth percentage based on the total debt divided by the shareholder's equity reported in the Balance Sheet within the company filings or reports."""
        ...

    @property
    def CashRatioGrowth(self) -> QuantConnect.Data.Fundamental.CashRatioGrowth:
        """The growth in the company's cash ratio on a percentage basis. Morningstar calculates the growth percentage based on the short term liquid investments (cash, cash equivalents, short term investments) divided by current liabilities reported in the Balance Sheet within the company filings or reports."""
        ...

    @property
    def EBITDAGrowth(self) -> QuantConnect.Data.Fundamental.EBITDAGrowth:
        """The growth in the company's EBITDA on a percentage basis. Morningstar calculates the growth percentage based on the earnings minus expenses (excluding interest, tax, depreciation, and amortization expenses) reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def CashFlowfromFinancingGrowth(self) -> QuantConnect.Data.Fundamental.CashFlowfromFinancingGrowth:
        """The growth in the company's cash flows from financing on a percentage basis. Morningstar calculates the growth percentage based on the financing cash flows reported in the Cash Flow Statement within the company filings or reports."""
        ...

    @property
    def CashFlowfromInvestingGrowth(self) -> QuantConnect.Data.Fundamental.CashFlowfromInvestingGrowth:
        """The growth in the company's cash flows from investing on a percentage basis. Morningstar calculates the growth percentage based on the cash flows from investing reported in the Cash Flow Statement within the company filings or reports."""
        ...

    @property
    def CapExGrowth(self) -> QuantConnect.Data.Fundamental.CapExGrowth:
        """The growth in the company's capital expenditures on a percentage basis. Morningstar calculates the growth percentage based on the capital expenditures reported in the Cash Flow Statement within the company filings or reports."""
        ...

    @property
    def CurrentRatioGrowth(self) -> QuantConnect.Data.Fundamental.CurrentRatioGrowth:
        """The growth in the company's current ratio on a percentage basis. Morningstar calculates the growth percentage based on the current assets divided by current liabilities reported in the Balance Sheet within the company filings or reports."""
        ...

    @property
    def WorkingCapitalTurnoverRatio(self) -> QuantConnect.Data.Fundamental.WorkingCapitalTurnoverRatio:
        """Total revenue / working capital (current assets minus current liabilities)"""
        ...

    @property
    def NetIncomePerEmployee(self) -> QuantConnect.Data.Fundamental.NetIncomePerEmployee:
        """Refers to the ratio of Net Income to Employees. Morningstar calculates the ratio by using the underlying data reported in the company filings or reports: Net Income / Employee Number."""
        ...

    @property
    def SolvencyRatio(self) -> QuantConnect.Data.Fundamental.SolvencyRatio:
        """Measure of whether a company's cash flow is sufficient to meet its short-term and long-term debt requirements. The lower this ratio is, the greater the probability that the company will be in financial distress. Net Income + Depreciation, Depletion and Amortization/ average of annual Total Liabilities over the most recent two periods."""
        ...

    @property
    def ExpenseRatio(self) -> QuantConnect.Data.Fundamental.ExpenseRatio:
        """A measure of operating performance for Insurance companies, as it shows the relationship between the premiums earned and administrative expenses related to claims such as fees and commissions. A number of 1 or lower is preferred, as this means the premiums exceed the expenses. Calculated as: (Deferred Policy Acquisition Amortization Expense+Fees and Commission Expense+Other Underwriting Expenses+Selling, General and Administrative) / Net Premiums Earned"""
        ...

    @property
    def LossRatio(self) -> QuantConnect.Data.Fundamental.LossRatio:
        """A measure of operating performance for Insurance companies, as it shows the relationship between the premiums earned and the expenses related to claims. A number of 1 or lower is preferred, as this means the premiums exceed the expenses. Calculated as: Benefits, Claims and Loss Adjustment Expense, Net / Net Premiums Earned"""
        ...

    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...


class DilutedEPSGrowth(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The growth in the company's diluted earnings per share (EPS) on a percentage basis. Morningstar calculates the annualized growth percentage based on the underlying diluted EPS reported in the Income Statement within the company filings or reports."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeYears(self) -> float:
        """Gets/sets the ThreeYears period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DilutedContEPSGrowth(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The growth in the company's diluted EPS from continuing operations on a percentage basis. Morningstar calculates the annualized growth percentage based on the underlying diluted EPS from continuing operations reported in the Income Statement within the company filings or reports."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeYears(self) -> float:
        """Gets/sets the ThreeYears period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class DPSGrowth(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The growth in the company's dividends per share (DPS) on a percentage basis. Morningstar calculates the annualized growth percentage based on the underlying DPS from its dividend database. Morningstar collects its DPS from company filings and reports, as well as from third party sources."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def ThreeYears(self) -> float:
        """Gets/sets the ThreeYears period value for the field"""
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class EquityPerShareGrowth(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The growth in the company's book value per share on a percentage basis. Morningstar calculates the annualized growth percentage based on the underlying equity and end of period shares outstanding reported in the company filings or reports."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def ThreeYears(self) -> float:
        """Gets/sets the ThreeYears period value for the field"""
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class RegressionGrowthofDividends5Years(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The five-year growth rate of dividends per share, calculated using regression analysis."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class FCFPerShareGrowth(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The growth in the company's free cash flow per share on a percentage basis. Morningstar calculates the growth percentage based on the free cash flow divided by average diluted shares outstanding reported in the Financial Statements within the company filings or reports."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeYears(self) -> float:
        """Gets/sets the ThreeYears period value for the field"""
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class BookValuePerShareGrowth(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The growth in the company's book value per share on a percentage basis. Morningstar calculates the growth percentage based on the common shareholder's equity reported in the Balance Sheet divided by the diluted shares outstanding within the company filings or reports."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def ThreeYears(self) -> float:
        """Gets/sets the ThreeYears period value for the field"""
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NormalizedDilutedEPSGrowth(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The growth in the company's Normalized Diluted EPS on a percentage basis."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def ThreeYears(self) -> float:
        """Gets/sets the ThreeYears period value for the field"""
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class NormalizedBasicEPSGrowth(QuantConnect.Data.Fundamental.MultiPeriodField):
    """The growth in the company's Normalized Basic EPS on a percentage basis."""

    @property
    def DefaultPeriod(self) -> str:
        """
        The default period
        
        This property is protected.
        """
        ...

    @property
    def OneYear(self) -> float:
        """Gets/sets the OneYear period value for the field"""
        ...

    @property
    def ThreeMonths(self) -> float:
        """Gets/sets the ThreeMonths period value for the field"""
        ...

    @property
    def ThreeYears(self) -> float:
        """Gets/sets the ThreeYears period value for the field"""
        ...

    @property
    def FiveYears(self) -> float:
        """Gets/sets the FiveYears period value for the field"""
        ...

    @property
    def HasValue(self) -> bool:
        """Returns true if the field contains a value for the default period"""
        ...

    @property
    def Value(self) -> float:
        """Returns the default value for the field"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def GetPeriodValue(self, period: str) -> float:
        """
        Gets the value of the field for the requested period
        
        :param period: The requested period
        :returns: The value for the period.
        """
        ...

    def GetPeriodValues(self) -> System.Collections.Generic.IReadOnlyDictionary[str, float]:
        """
        Gets a dictionary of period names and values for the field
        
        :returns: The dictionary of period names and values.
        """
        ...


class EarningRatios(ReusuableCLRObject):
    """Definition of the EarningRatios class"""

    @property
    def DilutedEPSGrowth(self) -> QuantConnect.Data.Fundamental.DilutedEPSGrowth:
        """The growth in the company's diluted earnings per share (EPS) on a percentage basis. Morningstar calculates the annualized growth percentage based on the underlying diluted EPS reported in the Income Statement within the company filings or reports."""
        ...

    @property
    def DilutedContEPSGrowth(self) -> QuantConnect.Data.Fundamental.DilutedContEPSGrowth:
        """The growth in the company's diluted EPS from continuing operations on a percentage basis. Morningstar calculates the annualized growth percentage based on the underlying diluted EPS from continuing operations reported in the Income Statement within the company filings or reports."""
        ...

    @property
    def DPSGrowth(self) -> QuantConnect.Data.Fundamental.DPSGrowth:
        """The growth in the company's dividends per share (DPS) on a percentage basis. Morningstar calculates the annualized growth percentage based on the underlying DPS from its dividend database. Morningstar collects its DPS from company filings and reports, as well as from third party sources."""
        ...

    @property
    def EquityPerShareGrowth(self) -> QuantConnect.Data.Fundamental.EquityPerShareGrowth:
        """The growth in the company's book value per share on a percentage basis. Morningstar calculates the annualized growth percentage based on the underlying equity and end of period shares outstanding reported in the company filings or reports."""
        ...

    @property
    def RegressionGrowthofDividends5Years(self) -> QuantConnect.Data.Fundamental.RegressionGrowthofDividends5Years:
        """The five-year growth rate of dividends per share, calculated using regression analysis."""
        ...

    @property
    def FCFPerShareGrowth(self) -> QuantConnect.Data.Fundamental.FCFPerShareGrowth:
        """The growth in the company's free cash flow per share on a percentage basis. Morningstar calculates the growth percentage based on the free cash flow divided by average diluted shares outstanding reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def BookValuePerShareGrowth(self) -> QuantConnect.Data.Fundamental.BookValuePerShareGrowth:
        """The growth in the company's book value per share on a percentage basis. Morningstar calculates the growth percentage based on the common shareholder's equity reported in the Balance Sheet divided by the diluted shares outstanding within the company filings or reports."""
        ...

    @property
    def NormalizedDilutedEPSGrowth(self) -> QuantConnect.Data.Fundamental.NormalizedDilutedEPSGrowth:
        """The growth in the company's Normalized Diluted EPS on a percentage basis."""
        ...

    @property
    def NormalizedBasicEPSGrowth(self) -> QuantConnect.Data.Fundamental.NormalizedBasicEPSGrowth:
        """The growth in the company's Normalized Basic EPS on a percentage basis."""
        ...

    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...


class ValuationRatios(ReusuableCLRObject):
    """Definition of the ValuationRatios class"""

    @property
    def PayoutRatio(self) -> float:
        """Dividend per share / Diluted earnings per share"""
        ...

    @property
    def SustainableGrowthRate(self) -> float:
        """ROE * (1 - Payout Ratio)"""
        ...

    @property
    def CashReturn(self) -> float:
        """Refers to the ratio of free cash flow to enterprise value. Morningstar calculates the ratio by using the underlying data reported in the company filings or reports: FCF /Enterprise Value."""
        ...

    @property
    def SalesPerShare(self) -> float:
        """Sales / Average Diluted Shares Outstanding"""
        ...

    @property
    def BookValuePerShare(self) -> float:
        """Common Shareholder's Equity / Diluted Shares Outstanding"""
        ...

    @property
    def CFOPerShare(self) -> float:
        """Cash Flow from Operations / Average Diluted Shares Outstanding"""
        ...

    @property
    def FCFPerShare(self) -> float:
        """Free Cash Flow / Average Diluted Shares Outstanding"""
        ...

    @property
    def EarningYield(self) -> float:
        """Diluted EPS / Price"""
        ...

    @property
    def PERatio(self) -> float:
        """Adjusted Close Price/ EPS. If the result is negative, zero, >10,000 or <0.001, then null."""
        ...

    @property
    def SalesYield(self) -> float:
        """SalesPerShare / Price"""
        ...

    @property
    def PSRatio(self) -> float:
        """Adjusted close price / Sales Per Share. If the result is negative or zero, then null."""
        ...

    @property
    def BookValueYield(self) -> float:
        """BookValuePerShare / Price"""
        ...

    @property
    def PBRatio(self) -> float:
        """Adjusted close price / Book Value Per Share. If the result is negative or zero, then null."""
        ...

    @property
    def CFYield(self) -> float:
        """CFOPerShare / Price"""
        ...

    @property
    def PCFRatio(self) -> float:
        """Adjusted close price /Cash Flow Per Share. If the result is negative or zero, then null."""
        ...

    @property
    def FCFYield(self) -> float:
        """FCFPerShare / Price"""
        ...

    @property
    def FCFRatio(self) -> float:
        """Adjusted close price/ Free Cash Flow Per Share. If the result is negative or zero, then null."""
        ...

    @property
    def TrailingDividendYield(self) -> float:
        """Dividends Per Share over the trailing 12 months / Price"""
        ...

    @property
    def ForwardDividendYield(self) -> float:
        """(Current Dividend Per Share * Payout Frequency) / Price"""
        ...

    @property
    def ForwardEarningYield(self) -> float:
        """Estimated Earnings Per Share / Price Note: a) The "Next" Year's EPS Estimate is used; For instance, if today's actual date is March 1, 2009, the "Current" EPS Estimate for MSFT is June 2009, and the "Next" EPS Estimate for MSFT is June 2010; the latter is used. b) The eps estimated data is sourced from a third party."""
        ...

    @property
    def ForwardPERatio(self) -> float:
        """1 / ForwardEarningYield If result is negative, then null"""
        ...

    @property
    def PEGRatio(self) -> float:
        """ForwardPERatio / Long-term Average Earning Growth Rate"""
        ...

    @property
    def PEGPayback(self) -> float:
        """The number of years it would take for a company's cumulative earnings to equal the stock's current trading price, assuming that the company continues to increase its annual earnings at the growth rate used to calculate the PEG ratio. [ Log (PG/E + 1) / Log (1 + G) ] - 1 Where P=Price E=Next Fiscal Year's Estimated EPS G=Long-term Average Earning Growth"""
        ...

    @property
    def TangibleBookValuePerShare(self) -> float:
        """The company's total book value less the value of any intangible assets dividend by number of shares."""
        ...

    @property
    def TangibleBVPerShare3YrAvg(self) -> float:
        """The three year average for tangible book value per share."""
        ...

    @property
    def TangibleBVPerShare5YrAvg(self) -> float:
        """The five year average for tangible book value per share."""
        ...

    @property
    def ForwardDividend(self) -> float:
        """Latest Dividend * Frequency"""
        ...

    @property
    def WorkingCapitalPerShare(self) -> float:
        """(Current Assets - Current Liabilities)/number of shares"""
        ...

    @property
    def WorkingCapitalPerShare3YrAvg(self) -> float:
        """The three year average for working capital per share."""
        ...

    @property
    def WorkingCapitalPerShare5YrAvg(self) -> float:
        """The five year average for working capital per share."""
        ...

    @property
    def EVToEBITDA(self) -> float:
        """Indicates what is a company being valued per each dollar of EBITDA generated."""
        ...

    @property
    def BuyBackYield(self) -> float:
        """The net repurchase of shares outstanding over the market capital of the company. It is a measure of shareholder return."""
        ...

    @property
    def TotalYield(self) -> float:
        """The total yield that shareholders can expect, by summing Dividend Yield and Buyback Yield."""
        ...

    @property
    def RatioPE5YearAverage(self) -> float:
        """The five-year average of the company's price-to-earnings ratio."""
        ...

    @property
    def PriceChange1M(self) -> float:
        """Price change this month, expressed as latest price/last month end price."""
        ...

    @property
    def NormalizedPERatio(self) -> float:
        """Adjusted Close Price/ Normalized EPS. Normalized EPS removes onetime and unusual items from net EPS, to provide investors with a more accurate measure of the company's true earnings. If the result is negative, zero, >10,000 or <0.001, then null."""
        ...

    @property
    def PricetoEBITDA(self) -> float:
        """Adjusted close price/EBITDA Per Share. If the result is negative or zero, then null."""
        ...

    @property
    def DivYield5Year(self) -> float:
        """Average of the last 60 monthly observations of trailing dividend yield in the last 5 years."""
        ...

    @property
    def ForwardROE(self) -> float:
        """Estimated EPS/Book Value Per Share"""
        ...

    @property
    def ForwardROA(self) -> float:
        """Estimated EPS/Total Assets Per Share"""
        ...

    @property
    def TwoYearsForwardEarningYield(self) -> float:
        """2 Years Forward Estimated EPS / Adjusted Close Price"""
        ...

    @property
    def TwoYearsForwardPERatio(self) -> float:
        """Adjusted Close Price/2 Years Forward Estimated EPS"""
        ...

    @property
    def ForwardCalculationStyle(self) -> str:
        """Indicates the method used to calculate Forward Dividend. There are three options: Annual, Look-back and Manual."""
        ...

    @property
    def ActualForwardDividend(self) -> float:
        """Used to collect the forward dividend for companies where our formula will not produce the correct value."""
        ...

    @property
    def TrailingCalculationStyle(self) -> str:
        """Indicates the method used to calculate Trailing Dividend. There are two options: Look-back and Manual."""
        ...

    @property
    def ActualTrailingDividend(self) -> float:
        """Used to collect the trailing dividend for companies where our formula will not produce the correct value."""
        ...

    @property
    def TotalAssetPerShare(self) -> float:
        """Total Assets / Diluted Shares Outstanding"""
        ...

    @property
    def ExpectedDividendGrowthRate(self) -> float:
        """The growth rate from the TrailingDividend to the Forward Dividend: {(Forward Dividend/Trailing Dividend) - 1}*100."""
        ...

    @property
    def EVtoRevenue(self) -> float:
        """Indicates what is a company being valued per each dollar of revenue generated."""
        ...

    @property
    def EVtoPreTaxIncome(self) -> float:
        """Indicates what is a company being valued per each dollar of Pretax Income generated."""
        ...

    @property
    def EVtoTotalAssets(self) -> float:
        """Indicates what is a company being valued per each dollar of asset value; should be the default EV multiple used in an asset driven business."""
        ...

    @property
    def EVtoFCF(self) -> float:
        """Indicates what is a company being valued per each dollar of free cash flow generated."""
        ...

    @property
    def EVtoEBIT(self) -> float:
        """Indicates what is a company being valued per each dollar of EBIT generated."""
        ...

    @property
    def FFOPerShare(self) -> float:
        """Funds from operations per share; populated only for real estate investment trusts (REITs), defined as the sum of net income, gain/loss (realized and unrealized) on investment securities, asset impairment charge, depreciation and amortization and gain/ loss on the sale of business and property plant and equipment, divided by shares outstanding."""
        ...

    @property
    def PricetoCashRatio(self) -> float:
        """The ratio of a stock's price to its cash flow per share."""
        ...

    @property
    def EVToForwardEBITDA(self) -> float:
        """Indicates what is a company being valued per each dollar of estimated EBITDA."""
        ...

    @property
    def EVToForwardRevenue(self) -> float:
        """Indicates what is a company being valued per each dollar of estimated revenue."""
        ...

    @property
    def EVToForwardEBIT(self) -> float:
        """Indicates what is a company being valued per each dollar of estimated EBIT."""
        ...

    @property
    def EVToEBITDA1YearGrowth(self) -> float:
        """The one-year growth in the company's EV to EBITDA on a percentage basis. Morningstar calculates the growth percentage based on the enterprise value (Market Cap + Preferred stock + Long-Term Debt And Capital Lease + Short Term Debt And Capital Lease + Securities Sold But Not Yet Repurchased - Cash, Cash Equivalent And Market Securities - Securities Purchased with Agreement to Resell - Securities Borrowed) divided by EBITDA (earnings minus expenses excluding interest, tax, depreciation, and amortization expenses) reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def EVToFCF1YearGrowth(self) -> float:
        """The one-year growth in the company's EV to free cash flow on a percentage basis. Morningstar calculates the growth percentage based on the enterprise value (Market Cap + Preferred stock + Long-Term Debt And Capital Lease + Short Term Debt And Capital Lease + Securities Sold But Not Yet Repurchased - Cash, Cash Equivalent And Market Securities - Securities Purchased with Agreement to Resell - Securities Borrowed) divided by free cash flow (Cash flow from operations - Capital Expenditures) reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def EVToRevenue1YearGrowth(self) -> float:
        """The one-year growth in the company's EV to revenue on a percentage basis. Morningstar calculates the growth percentage based on the enterprise value (Market Cap + Preferred stock + Long-Term Debt And Capital Lease + Short Term Debt And Capital Lease + Securities Sold But Not Yet Repurchased - Cash, Cash Equivalent And Market Securities - Securities Purchased with Agreement to Resell - Securities Borrowed) divided by Total Revenue reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def EVToTotalAssets1YearGrowth(self) -> float:
        """The one-year growth in the company's EV to total assets on a percentage basis. Morningstar calculates the growth percentage based on the enterprise value (Market Cap + Preferred stock + Long-Term Debt And Capital Lease + Short Term Debt And Capital Lease + Securities Sold But Not Yet Repurchased - Cash, Cash Equivalent And Market Securities - Securities Purchased with Agreement to Resell - Securities Borrowed) divided by total assets reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def PFCFRatio1YearGrowth(self) -> float:
        """The one-year growth in the company's price to free cash flow ratio on a percentage basis. Morningstar calculates the growth percentage based on the adjusted close price divided by the free cash flow reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def PBRatio1YearGrowth(self) -> float:
        """The one-year growth in the company's price to book ratio on a percentage basis. Morningstar calculates the growth percentage based on the adjusted close price divided by the book value per share reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def PERatio1YearGrowth(self) -> float:
        """The one-year growth in the company's PE ratio on a percentage basis. Morningstar calculates the growth percentage based on the adjusted close price divided by the earnings per share reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def PSRatio1YearGrowth(self) -> float:
        """The one-year growth in the company's price to sales ratio on a percentage basis. Morningstar calculates the growth percentage based on the adjusted close price divided by the sales per share reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def EVToEBIT3YrAvg(self) -> float:
        """The three-year average for a company's EV to EBIT ratio: EV (Market Cap + Preferred stock + Long-Term Debt And Capital Lease + Short Term Debt And Capital Lease + Securities Sold But Not Yet Repurchased - Cash, Cash Equivalent And Market Securities - Securities Purchased with Agreement to Resell - Securities Borrowed) divided by EBIT (earnings minus expenses excluding interest and tax expenses) reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def EVToEBITDA3YrAvg(self) -> float:
        """The three-year average for a company's EV to EBITDA ratio: EV (Market Cap + Preferred stock + Long-Term Debt And Capital Lease + Short Term Debt And Capital Lease + Securities Sold But Not Yet Repurchased - Cash, Cash Equivalent And Market Securities - Securities Purchased with Agreement to Resell - Securities Borrowed) divided by EBITDA (earnings minus expenses excluding interest, tax, depreciation, and amortization expenses) reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def EVToFCF3YrAvg(self) -> float:
        """The three-year average for a company's EV to free cash flow ratio: EV (Market Cap + Preferred stock + Long-Term Debt And Capital Lease + Short Term Debt And Capital Lease + Securities Sold But Not Yet Repurchased - Cash, Cash Equivalent And Market Securities - Securities Purchased with Agreement to Resell - Securities Borrowed) divided by free cash flow (Cash Flow from Operations - Capital Expenditures) reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def EVToRevenue3YrAvg(self) -> float:
        """The three-year average for a company's EV to revenue ratio: EV (Market Cap + Preferred stock + Long-Term Debt And Capital Lease + Short Term Debt And Capital Lease + Securities Sold But Not Yet Repurchased - Cash, Cash Equivalent And Market Securities - Securities Purchased with Agreement to Resell - Securities Borrowed) divided by Total Revenue reported in the Financial Statements within the company filings or reports)."""
        ...

    @property
    def EVToTotalAssets3YrAvg(self) -> float:
        """The three-year average for a company's EV to total assets ratio: EV (Market Cap + Preferred stock + Long-Term Debt And Capital Lease + Short Term Debt And Capital Lease + Securities Sold But Not Yet Repurchased - Cash, Cash Equivalent And Market Securities - Securities Purchased with Agreement to Resell - Securities Borrowed) divided by Total Assets reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def EVToEBIT3YrAvgChange(self) -> float:
        """The growth in the three-year average for a company's EV to EBIT ratio. Morningstar calculates the growth percentage based on the EV to EBIT ratio ((Market Cap + Preferred stock + Long-Term Debt And Capital Lease + Short Term Debt And Capital Lease + Securities Sold But Not Yet Repurchased - Cash, Cash Equivalent And Market Securities - Securities Purchased with Agreement to Resell - Securities Borrowed) divided by EBIT (earnings minus expenses excluding interest and tax expenses) reported in the Financial Statements within the company filings or reports)."""
        ...

    @property
    def EVToEBITDA3YrAvgChange(self) -> float:
        """The growth in the three-year average for a company's EV to EBITDA ratio. Morningstar calculates the growth percentage based on the EV to EBITDA ratio ((Market Cap + Preferred stock + Long-Term Debt And Capital Lease + Short Term Debt And Capital Lease + Securities Sold But Not Yet Repurchased - Cash, Cash Equivalent And Market Securities - Securities Purchased with Agreement to Resell - Securities Borrowed) divided by EBITDA (earnings minus expenses excluding interest, tax depreciation and amortization expenses) reported in the Financial Statements within the company filings or reports)."""
        ...

    @property
    def EVToFCF3YrAvgChange(self) -> float:
        """The growth in the three-year average for a company's EV to free cash flow ratio. Morningstar calculates the growth percentage based on the EV to free cash flow ratio ((Market Cap + Preferred stock + Long-Term Debt And Capital Lease + Short Term Debt And Capital Lease + Securities Sold But Not Yet Repurchased - Cash, Cash Equivalent And Market Securities - Securities Purchased with Agreement to Resell - Securities Borrowed) divided by free cash flow (Cash Flow from Operations - Capital Expenditures) reported in the Financial Statements within the company filings or reports)."""
        ...

    @property
    def EVToRevenue3YrAvgChange(self) -> float:
        """The growth in the three-year average for a company's EV to revenue ratio. Morningstar calculates the growth percentage based on the EV to revenue ratio ((Market Cap + Preferred stock + Long-Term Debt And Capital Lease + Short Term Debt And Capital Lease + Securities Sold But Not Yet Repurchased - Cash, Cash Equivalent And Market Securities - Securities Purchased with Agreement to Resell - Securities Borrowed) divided by Total Revenue reported in the Financial Statements within the company filings or reports)."""
        ...

    @property
    def EVToTotalAssets3YrAvgChange(self) -> float:
        """The growth in the three-year average for a company's EV to total assets ratio. Morningstar calculates the growth percentage based on the EV to total assets ratio ((Market Cap + Preferred stock + Long-Term Debt And Capital Lease + Short Term Debt And Capital Lease + Securities Sold But Not Yet Repurchased - Cash, Cash Equivalent And Market Securities - Securities Purchased with Agreement to Resell - Securities Borrowed) divided by total assets reported in the Financial Statements within the company filings or reports)."""
        ...

    @property
    def PFCFRatio3YrAvg(self) -> float:
        """The three-year average for a company's price to free cash flow ratio (the adjusted close price divided by the free cash flow per share reported in the Financial Statements within the company filings or reports)."""
        ...

    @property
    def PBRatio3YrAvg(self) -> float:
        """The three-year average for a company's price to book ratio (the adjusted close price divided by the book value per share reported in the Financial Statements within the company filings or reports)."""
        ...

    @property
    def PSRatio3YrAvg(self) -> float:
        """The three-year average for a company's price to sales ratio (the adjusted close price divided by the total sales per share reported in the Financial Statements within the company filings or reports)."""
        ...

    @property
    def PCashRatio3YrAvg(self) -> float:
        """The three-year average for a company's price to cash ratio (the adjusted close price divided by the cash flow per share reported in the Financial Statements within the company filings or reports)."""
        ...

    @property
    def PERatio3YrAvg(self) -> float:
        """The three-year average for a company's PE ratio (the adjusted close price divided by the earnings per share reported in the Financial Statements within the company filings or reports)."""
        ...

    @property
    def PFCFRatio3YrAvgChange(self) -> float:
        """The growth in the three-year average for a company's price to free cash flow ratio. Morningstar calculates the growth percentage based on the adjusted close price divided by the free cash flow per share reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def PBRatio3YrAvgChange(self) -> float:
        """The growth in the three-year average for a company's price to book ratio. Morningstar calculates the growth percentage based on the adjusted close price divided by the book value per share reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def PSRatio3YrAvgChange(self) -> float:
        """The growth in the three-year average for a company's price to sales ratio. Morningstar calculates the growth percentage based on the adjusted close price divided by the total sales per share reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def PERatio3YrAvgChange(self) -> float:
        """The growth in the three-year average for a company's PE ratio. Morningstar calculates the growth percentage based on the adjusted close price divided by the earnings per share reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def PERatio1YearHigh(self) -> float:
        """The one-year high for a company's PE ratio (adjusted close price divided by the earnings per share reported in the Financial Statements within the company filings or reports)."""
        ...

    @property
    def PERatio1YearLow(self) -> float:
        """The one-year low for a company's PE ratio (adjusted close price divided by the earnings per share reported in the Financial Statements within the company filings or reports)."""
        ...

    @property
    def PERatio1YearAverage(self) -> float:
        """The one-year average for a company's PE ratio (adjusted close price divided by the earnings per share reported in the Financial Statements within the company filings or reports)."""
        ...

    @property
    def PERatio5YearHigh(self) -> float:
        """The five-year high for a company's PE ratio (adjusted close price divided by the earnings per share reported in the Financial Statements within the company filings or reports)."""
        ...

    @property
    def PERatio5YearLow(self) -> float:
        """The five-year low for a company's PE ratio (adjusted close price divided by the earnings per share reported in the Financial Statements within the company filings or reports)."""
        ...

    @property
    def PERatio5YearAverage(self) -> float:
        """The five-year average for a company's PE ratio (adjusted close price divided by the earnings per share reported in the Financial Statements within the company filings or reports)."""
        ...

    @property
    def PERatio10YearHigh(self) -> float:
        """The ten-year high for a company's PE ratio (adjusted close price divided by the earnings per share reported in the Financial Statements within the company filings or reports)."""
        ...

    @property
    def PERatio10YearLow(self) -> float:
        """The ten-year low for a company's PE ratio (adjusted close price divided by the earnings per share reported in the Financial Statements within the company filings or reports)."""
        ...

    @property
    def PERatio10YearAverage(self) -> float:
        """The ten-year average for a company's PE ratio (adjusted close price divided by the earnings per share reported in the Financial Statements within the company filings or reports)."""
        ...

    @property
    def CAPERatio(self) -> float:
        """The cyclically adjusted PE ratio for a company; adjusted close price divided by earnings per share. If the result is negative, zero, >10,000 or <0.001, then null. Morningstar uses the CPI index for US companies and Indexes from the World Bank for the rest of the global markets."""
        ...

    @property
    def EVToEBITDA3YearGrowth(self) -> float:
        """The three-year growth in the company's EV to EBITDA on a percentage basis. Morningstar calculates the growth percentage based on the enterprise value (Market Cap + Preferred stock + Long-Term Debt And Capital Lease + Short Term Debt And Capital Lease + Securities Sold But Not Yet Repurchased - Cash, Cash Equivalent And Market Securities - Securities Purchased with Agreement to Resell - Securities Borrowed) divided by EBITDA (earnings minus expenses excluding interest, tax, depreciation, and amortization expenses) reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def EVToFCF3YearGrowth(self) -> float:
        """The three-year growth in the company's EV to free cash flow on a percentage basis. Morningstar calculates the growth percentage based on the enterprise value (Market Cap + Preferred stock + Long-Term Debt And Capital Lease + Short Term Debt And Capital Lease + Securities Sold But Not Yet Repurchased - Cash, Cash Equivalent And Market Securities - Securities Purchased with Agreement to Resell - Securities Borrowed) divided by free cash flow (Cash flow from operations - Capital Expenditures) reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def EVToRevenue3YearGrowth(self) -> float:
        """The three-year growth in the company's EV to revenue on a percentage basis. Morningstar calculates the growth percentage based on the enterprise value (Market Cap + Preferred stock + Long-Term Debt And Capital Lease + Short Term Debt And Capital Lease + Securities Sold But Not Yet Repurchased - Cash, Cash Equivalent And Market Securities - Securities Purchased with Agreement to Resell - Securities Borrowed) divided by Total Revenue reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def EVToTotalAssets3YearGrowth(self) -> float:
        """The three-year growth in the company's EV to total assets on a percentage basis. Morningstar calculates the growth percentage based on the enterprise value (Market Cap + Preferred stock + Long-Term Debt And Capital Lease + Short Term Debt And Capital Lease + Securities Sold But Not Yet Repurchased - Cash, Cash Equivalent And Market Securities - Securities Purchased with Agreement to Resell - Securities Borrowed) divided by total assets reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def PFCFRatio3YearGrowth(self) -> float:
        """The three-year growth in the company's price to free cash flow ratio on a percentage basis. Morningstar calculates the growth percentage based on the adjusted close price divided by the free cash flow reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def PBRatio3YearGrowth(self) -> float:
        """The three-year growth in the company's price to book ratio on a percentage basis. Morningstar calculates the growth percentage based on the adjusted close price divided by the book value per share reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def PERatio3YearGrowth(self) -> float:
        """The three-year growth in the company's PE ratio on a percentage basis. Morningstar calculates the growth percentage based on the adjusted close price divided by the earnings per share reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def PSRatio3YearGrowth(self) -> float:
        """The three-year growth in the company's price to sales ratio on a percentage basis. Morningstar calculates the growth percentage based on the adjusted close price divided by the sales per share reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def EVToEBITDA5YearGrowth(self) -> float:
        """The five-year growth in the company's EV to EBITDA on a percentage basis. Morningstar calculates the growth percentage based on the enterprise value (Market Cap + Preferred stock + Long-Term Debt And Capital Lease + Short Term Debt And Capital Lease + Securities Sold But Not Yet Repurchased - Cash, Cash Equivalent And Market Securities - Securities Purchased with Agreement to Resell - Securities Borrowed) divided by EBITDA (earnings minus expenses excluding interest, tax, depreciation, and amortization expenses) reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def EVToFCF5YearGrowth(self) -> float:
        """The five-year growth in the company's EV to free cash flow on a percentage basis. Morningstar calculates the growth percentage based on the enterprise value (Market Cap + Preferred stock + Long-Term Debt And Capital Lease + Short Term Debt And Capital Lease + Securities Sold But Not Yet Repurchased - Cash, Cash Equivalent And Market Securities - Securities Purchased with Agreement to Resell - Securities Borrowed) divided by free cash flow (Cash flow from operations - Capital Expenditures) reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def EVToRevenue5YearGrowth(self) -> float:
        """The five-year growth in the company's EV to revenue on a percentage basis. Morningstar calculates the growth percentage based on the enterprise value (Market Cap + Preferred stock + Long-Term Debt And Capital Lease + Short Term Debt And Capital Lease + Securities Sold But Not Yet Repurchased - Cash, Cash Equivalent And Market Securities - Securities Purchased with Agreement to Resell - Securities Borrowed) divided by Total Revenue reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def EVToTotalAssets5YearGrowth(self) -> float:
        """The five-year growth in the company's EV to total assets on a percentage basis. Morningstar calculates the growth percentage based on the enterprise value (Market Cap + Preferred stock + Long-Term Debt And Capital Lease + Short Term Debt And Capital Lease + Securities Sold But Not Yet Repurchased - Cash, Cash Equivalent And Market Securities - Securities Purchased with Agreement to Resell - Securities Borrowed) divided by total assets reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def PFCFRatio5YearGrowth(self) -> float:
        """The five-year growth in the company's price to free cash flow ratio on a percentage basis. Morningstar calculates the growth percentage based on the adjusted close price divided by the free cash flow reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def PBRatio5YearGrowth(self) -> float:
        """The five-year growth in the company's price to book ratio on a percentage basis. Morningstar calculates the growth percentage based on the adjusted close price divided by the book value per share reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def PERatio5YearGrowth(self) -> float:
        """The five-year growth in the company's PE ratio on a percentage basis. Morningstar calculates the growth percentage based on the adjusted close price divided by the earnings per share reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def PSRatio5YearGrowth(self) -> float:
        """The five-year growth in the company's price to sales ratio on a percentage basis. Morningstar calculates the growth percentage based on the adjusted close price divided by the sales per share reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def EVToEBITDA10YearGrowth(self) -> float:
        """The ten-year growth in the company's EV to EBITDA on a percentage basis. Morningstar calculates the growth percentage based on the enterprise value (Market Cap + Preferred stock + Long-Term Debt And Capital Lease + Short Term Debt And Capital Lease + Securities Sold But Not Yet Repurchased - Cash, Cash Equivalent And Market Securities - Securities Purchased with Agreement to Resell - Securities Borrowed) divided by EBITDA (earnings minus expenses excluding interest, tax, depreciation, and amortization expenses) reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def EVToFCF10YearGrowth(self) -> float:
        """The ten-year growth in the company's EV to free cash flow on a percentage basis. Morningstar calculates the growth percentage based on the enterprise value (Market Cap + Preferred stock + Long-Term Debt And Capital Lease + Short Term Debt And Capital Lease + Securities Sold But Not Yet Repurchased - Cash, Cash Equivalent And Market Securities - Securities Purchased with Agreement to Resell - Securities Borrowed) divided by free cash flow (Cash flow from operations - Capital Expenditures) reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def EVToRevenue10YearGrowth(self) -> float:
        """The ten-year growth in the company's EV to revenue on a percentage basis. Morningstar calculates the growth percentage based on the enterprise value (Market Cap + Preferred stock + Long-Term Debt And Capital Lease + Short Term Debt And Capital Lease + Securities Sold But Not Yet Repurchased - Cash, Cash Equivalent And Market Securities - Securities Purchased with Agreement to Resell - Securities Borrowed) divided by Total Revenue reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def EVToTotalAssets10YearGrowth(self) -> float:
        """The ten-year growth in the company's EV to total assets on a percentage basis. Morningstar calculates the growth percentage based on the enterprise value (Market Cap + Preferred stock + Long-Term Debt And Capital Lease + Short Term Debt And Capital Lease + Securities Sold But Not Yet Repurchased - Cash, Cash Equivalent And Market Securities - Securities Purchased with Agreement to Resell - Securities Borrowed) divided by total assets reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def PFCFRatio10YearGrowth(self) -> float:
        """The ten-year growth in the company's price to free cash flow ratio on a percentage basis. Morningstar calculates the growth percentage based on the adjusted close price divided by the free cash flow reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def PBRatio10YearGrowth(self) -> float:
        """The ten-year growth in the company's price to book ratio on a percentage basis. Morningstar calculates the growth percentage based on the adjusted close price divided by the book value per share reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def PERatio10YearGrowth(self) -> float:
        """The ten-year growth in the company's PE ratio on a percentage basis. Morningstar calculates the growth percentage based on the adjusted close price divided by the earnings per share reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def PSRatio10YearGrowth(self) -> float:
        """The ten-year growth in the company's price to sales ratio on a percentage basis. Morningstar calculates the growth percentage based on the adjusted close price divided by the sales per share reported in the Financial Statements within the company filings or reports."""
        ...

    @property
    def TwoYrsEVToForwardEBIT(self) -> float:
        """Indicates what is a company being valued per each dollar of estimated EBIT in year 2."""
        ...

    @property
    def TwoYrsEVToForwardEBITDA(self) -> float:
        """Indicates what is a company being valued per each dollar of estimated EBITDA in year 2."""
        ...

    @property
    def FirstYearEstimatedEPSGrowth(self) -> float:
        """EPS Growth Ratio: (Estimated EPS Year 1) / (TTM Normalized diluted EPS"""
        ...

    @property
    def SecondYearEstimatedEPSGrowth(self) -> float:
        """EPS Growth Ratio: (Estimated EPS Year 2) / (Estimated EPS Year 1)"""
        ...

    @property
    def NormalizedPEGatio(self) -> float:
        """Normalized ForwardPERatio / Long-term Average Normalized Earnings Growth Rate"""
        ...

    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...


class CompanyProfile(ReusuableCLRObject):
    """Definition of the CompanyProfile class"""

    @property
    def HeadquarterAddressLine1(self) -> str:
        """The headquarter address as given in the latest report"""
        ...

    @property
    def HeadquarterAddressLine2(self) -> str:
        """The headquarter address as given in the latest report"""
        ...

    @property
    def HeadquarterAddressLine3(self) -> str:
        """The headquarter address as given in the latest report"""
        ...

    @property
    def HeadquarterAddressLine4(self) -> str:
        """The headquarter address as given in the latest report"""
        ...

    @property
    def HeadquarterAddressLine5(self) -> str:
        """The headquarter address as given in the latest report"""
        ...

    @property
    def HeadquarterCity(self) -> str:
        """The headquarter city as given in the latest report"""
        ...

    @property
    def HeadquarterProvince(self) -> str:
        """The headquarter state or province as given in the latest report"""
        ...

    @property
    def HeadquarterCountry(self) -> str:
        """The headquarter country as given in the latest report"""
        ...

    @property
    def HeadquarterPostalCode(self) -> str:
        """The headquarter postal code as given in the latest report"""
        ...

    @property
    def HeadquarterPhone(self) -> str:
        """The headquarter phone number as given in the latest report"""
        ...

    @property
    def HeadquarterFax(self) -> str:
        """The headquarter fax number as given in the latest report"""
        ...

    @property
    def HeadquarterHomepage(self) -> str:
        """The headquarters' website address as given in the latest report"""
        ...

    @property
    def TotalEmployeeNumber(self) -> int:
        """The number of employees as indicated on the latest Annual Report, 10-K filing, Form 20-F or equivalent report indicating the employee count at the end of latest fiscal year."""
        ...

    @property
    def ContactEmail(self) -> str:
        """Company's contact email address"""
        ...

    @property
    def AverageEmployeeNumber(self) -> int:
        """Average number of employees from Annual Report"""
        ...

    @property
    def RegisteredAddressLine1(self) -> str:
        """Details for registered office contact information including address full details, phone and"""
        ...

    @property
    def RegisteredAddressLine2(self) -> str:
        """Address for registered office"""
        ...

    @property
    def RegisteredAddressLine3(self) -> str:
        """Address for registered office"""
        ...

    @property
    def RegisteredAddressLine4(self) -> str:
        """Address for registered office"""
        ...

    @property
    def RegisteredCity(self) -> str:
        """City for registered office"""
        ...

    @property
    def RegisteredProvince(self) -> str:
        """Province for registered office"""
        ...

    @property
    def RegisteredCountry(self) -> str:
        """Country for registered office"""
        ...

    @property
    def RegisteredPostalCode(self) -> str:
        """Postal Code for registered office"""
        ...

    @property
    def RegisteredPhone(self) -> str:
        """Phone number for registered office"""
        ...

    @property
    def RegisteredFax(self) -> str:
        """Fax number for registered office"""
        ...

    @property
    def IsHeadOfficeSameWithRegisteredOfficeFlag(self) -> bool:
        """Flag to denote whether head and registered offices are the same"""
        ...

    @property
    def SharesOutstanding(self) -> int:
        """The latest total shares outstanding reported by the company; most common source of this information is from the cover of the 10K, 10Q, or 20F filing. This figure is an aggregated shares outstanding number for a company. It can be used to calculate the most accurate market cap, based on each individual share's trading price and the total aggregated shares outstanding figure."""
        ...

    @property
    def MarketCap(self) -> int:
        """Price * Total SharesOutstanding. The most current market cap for example, would be the most recent closing price x the most recent reported shares outstanding. For ADR share classes, market cap is price * (ordinary shares outstanding / adr ratio)."""
        ...

    @property
    def EnterpriseValue(self) -> int:
        """This number tells you what cash return you would get if you bought the entire company, including its debt. Enterprise Value = Market Cap + Preferred stock + Long-Term Debt And Capital Lease + Short Term Debt And Capital Lease + Securities Sold But Not Yet Repurchased - Cash, Cash Equivalent And Market Securities - Securities Purchased with Agreement to Resell - Securities Borrowed."""
        ...

    @property
    def ShareClassLevelSharesOutstanding(self) -> int:
        """The latest shares outstanding reported by the company of a particular share class; most common source of this information is from the cover of the 10K, 10Q, or 20F filing. This figure is an aggregated shares outstanding number for a particular share class of the company."""
        ...

    @property
    def SharesOutstandingWithBalanceSheetEndingDate(self) -> int:
        """Total shares outstanding reported by the company as of the balance sheet period ended date. The most common source of this information is from the 10K, 10Q, or 20F filing. This figure is an aggregated shares outstanding number for a company."""
        ...

    @property
    def ReasonofSharesChange(self) -> str:
        """The reason for the change in a company's total shares outstanding from the previous record. Examples could be share issuances or share buy-back. This field will only be populated when total shares outstanding is collected from a press release."""
        ...

    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...


class AssetClassification(ReusuableCLRObject):
    """Definition of the AssetClassification class"""

    @property
    def StockType(self) -> int:
        """The purpose of the Stock Types is to group companies according to the underlying fundamentals of their business. They answer the question: If I buy this stock, what kind of company am I buying? Unlike the style box, the emphasis with the Stock Types is on income statement, balance sheet, and cash-flow data-not price data or valuation multiples. We focus on the company, not the stock. Morningstar calculates this figure in-house on a monthly basis."""
        ...

    @property
    def StyleBox(self) -> int:
        """The Morningstar Equity Style Box is a grid that provides a graphical representation of the investment style of stocks and portfolios. It classifies securities according to market capitalization (the vertical axis) and value-growth scores (the horizontal axis) and allows us to provide analysis on a 5-by-5 Style Box as well as providing the traditional style box assignment, which is the basis for the Morningstar Category. Two of the style categories, value and growth, are common to both stocks and portfolios. However, for stocks, the central column of the style box represents the core style (those stocks for which neither value nor growth characteristics dominate); for portfolios, it represents the blend style."""
        ...

    @property
    def GrowthGrade(self) -> str:
        """The growth grade is based on the trend in revenue per share using data from the past five years. For the purpose of calculating revenue per share we use the past five years' revenue figures and corresponding year-end fully diluted shares outstanding; if year- end fully diluted shares outstanding is not available, we calculate this figure by dividing the company's reported net income applicable to common shareholders by the reported fully diluted earnings per share. A company must have a minimum of four consecutive years of positive and non-zero revenue, including the latest fiscal year, to qualify for a grade. In calculating the revenue per share growth rate, we calculate the slope of the regression line of historical revenue per share. We then divide the slope of the regression line by the arithmetic average of historical revenue per share figures. The result of the regression is a normalized historical increase or decrease in the rate of growth for sales per share. We then calculate a z-score by subtracting the universe mean revenue growth from the company's revenue growth, and dividing by the standard deviation of the universe's growth rates. Stocks are sorted based on the z-score of their revenue per share growth rate calculated above, from the most negative z-score to the most positive z-score. Stocks are then ranked based on their z-score from 1 to the total number of qualified stocks. We assign grades based on this ranking. Stocks are assigned A, B, C, D, or F. Morningstar calculates this figure in-house on a monthly basis."""
        ...

    @property
    def FinancialHealthGrade(self) -> str:
        """Instead of using accounting-based ratios to formulate a measure to reflect the financial health of a firm, we use structural or contingent claim models. Structural models take advantage of both market information and accounting financial information. The firm's equity in such models is viewed as a call option on the value of the firm's assets. If the value of the assets is not sufficient to cover the firm's liabilities (the strike price), default is expected to occur, and the call option expires worthless and the firm is turned over to its creditors. To estimate a distance to default, the value of the firm's liabilities is obtained from the firm's latest balance sheet and incorporated into the model. We then rank the calculated distance to default and award 10% of the universe A's, 20% B's, 40% C's, 20% D's, and 10% F's. Morningstar calculates this figure in-house on a daily basis."""
        ...

    @property
    def ProfitabilityGrade(self) -> str:
        """The profitability grade for all qualified companies in Morningstar's stock universe is based on valuation of return on shareholders' equity (ROE) using data from the past five years. Morningstar's universe of stocks is first filtered for adequacy of historical ROE figures. Companies with less than four years of consecutive ROE figures including the ROE figure for the latest fiscal year are tossed from calculations and are assigned "--" for the profitability grade. For the remaining qualified universe of stocks the profitability grade is based on the valuation of the following three components, which are assigned different weights; the historical growth rate of ROE, the average level of historical ROE, the level of ROE in the latest fiscal year of the company. Stocks are assigned A, B, C, D, or F. Morningstar calculates this figure in-house on a monthly basis."""
        ...

    @property
    def MorningstarIndustryCode(self) -> int:
        """Equities are mapped into one of 148 industries, the one which most accurately reflects the underlying business of that company. This mapping is based on publicly available information about each company and uses annual reports, Form 10-Ks and Morningstar Equity Analyst input as its primary source. Other secondary sources of information may include company web sites, sell-side research (if available) and trade publications. By and large, equities are mapped into the industries that best reflect each company's largest source of revenue and income. If the company has more than three sources of revenue and income and there is no clear dominant revenue and income stream, the company is assigned to the Conglomerates industry. Based on Morningstar analyst research or other third party information, Morningstar may change industry assignments to more accurately reflect the changing businesses of companies."""
        ...

    @property
    def MorningstarIndustryGroupCode(self) -> int:
        """Industries are mapped into 69 industry groups based on their common operational characteristics. If a particular industry has unique operating characteristics-or simply lacks commonality with other industries-it would map into its own group. However, any industry group containing just one single industry does not necessarily imply that that industry is dominant or otherwise important. The assignment simply reflects the lack of a sufficient amount of shared traits among industries. See appendix for mappings."""
        ...

    @property
    def MorningstarSectorCode(self) -> int:
        """Industry groups are consolidated into 11 sectors. See appendix for mappings."""
        ...

    @property
    def MorningstarEconomySphereCode(self) -> int:
        """Sectors are consolidated into three major economic spheres or Super Sectors: Cyclical, Defensive and Sensitive. See appendix for mappings."""
        ...

    @property
    def SIC(self) -> int:
        """Standard Industrial Classification System (SIC) is a system for classifying a business according to economic activity. See separate reference document for a list of Sic Codes/Mappings."""
        ...

    @property
    def NAICS(self) -> int:
        """An acronym for North American Industry Classification System, it is a 6 digit numerical classification assigned to individual companies. Developed jointly by the U.S., Canada, and Mexico to provide new comparability in statistics about business activity across North America. It is intended to replace the U.S. Standard Industrial Classification (SIC) system. See separate reference document for a list of NAICS Codes/Mappings."""
        ...

    @property
    def StyleScore(self) -> float:
        """The scores for a stock's value and growth characteristics determine its horizontal placement. The Value-Growth Score is a reflection of the aggregate expectations of market participants for the future growth and required rate of return for a stock. We infer these expectations from the relation between current market prices and future growth and cost of capital expectations under the assumption of rational market participants and a simple model of stock value."""
        ...

    @property
    def SizeScore(self) -> float:
        """Rather than a fixed number of large cap or small cap stocks, Morningstar uses a flexible system that isn't adversely affected by overall movements in the market. The Morningstar stock universe represents approximately 99% of the U.S. market for actively traded stocks. Giant-cap stocks are defined as the group that accounts for the top 40% of the capitalization of the Morningstar domestic stock universe; large-cap stocks represent the next 30%; mid-cap stocks represent the next 20%; small-cap stocks represent the next 7%; and micro-cap stocks represent the remaining 3%. Each stock is given a Size Score that ranges from -100 (very micro) to 400 (very giant). When classifying stocks to a Style Box, giant is included in large and micro is included in small."""
        ...

    @property
    def GrowthScore(self) -> float:
        """A high overall growth score indicates that a stock's per-share earnings, book value, revenues, and cash flow are expected to grow quickly relative to other stocks in the same scoring group. A weak growth orientation does not necessarily mean that a stock has a strong value orientation."""
        ...

    @property
    def ValueScore(self) -> float:
        """A high value score indicates that a stock's price is relatively low, given the anticipated per-sharing earnings, book value, revenues, cash flow, and dividends that the stock provides to investors. A high price relative to these measures indicates that a stock's value orientation is weak, but it does not necessarily mean that the stock is growth-oriented."""
        ...

    @property
    def NACE(self) -> float:
        """NACE is a European standard classification of economic activities maintained by Eurostat."""
        ...

    @property
    def CANNAICS(self) -> int:
        """Similar to NAICS (data point 3010, above), this is specifically for Canadian classifications. An acronym for North American Industry Classification System, it is a 6 digit numerical classification assigned to individual companies. Developed jointly by the U.S., Canada, and Mexico to provide new comparability in statistics about business activity across North America. It is intended to replace the U.S. Standard Industrial Classification (SIC) system. See separate reference document for a list of NAICS Codes/Mappings. The initial SIC and NAICS listed is the Primary based on revenue generation; followed by Secondary SIC and NAICS when applicable. Both SIC and NAICS are manually collected and assigned."""
        ...

    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """Creates a new instance for the given time and security"""
        ...


class FundamentalInstanceProvider(System.Object):
    """Per symbol we will have a fundamental class provider so the instances can be reused"""

    @staticmethod
    def Get(symbol: typing.Union[QuantConnect.Symbol, str]) -> QuantConnect.Data.Fundamental.FundamentalInstanceProvider:
        """
        Get's the fundamental instance provider for the requested symbol
        
        :param symbol: The requested symbol
        :returns: The unique instance provider.
        """
        ...

    def GetAssetClassification(self, time: typing.Union[datetime.datetime, datetime.date]) -> QuantConnect.Data.Fundamental.AssetClassification:
        """Returns the AssetClassification instance"""
        ...

    def GetCompanyProfile(self, time: typing.Union[datetime.datetime, datetime.date]) -> QuantConnect.Data.Fundamental.CompanyProfile:
        """Returns the CompanyProfile instance"""
        ...

    def GetCompanyReference(self, time: typing.Union[datetime.datetime, datetime.date]) -> QuantConnect.Data.Fundamental.CompanyReference:
        """Returns the CompanyReference instance"""
        ...

    def GetEarningRatios(self, time: typing.Union[datetime.datetime, datetime.date]) -> QuantConnect.Data.Fundamental.EarningRatios:
        """Returns the EarningRatios instance"""
        ...

    def GetEarningReports(self, time: typing.Union[datetime.datetime, datetime.date]) -> QuantConnect.Data.Fundamental.EarningReports:
        """Returns the EarningReports instance"""
        ...

    def GetFinancialStatements(self, time: typing.Union[datetime.datetime, datetime.date]) -> QuantConnect.Data.Fundamental.FinancialStatements:
        """Returns the FinancialStatements instance"""
        ...

    def GetOperationRatios(self, time: typing.Union[datetime.datetime, datetime.date]) -> QuantConnect.Data.Fundamental.OperationRatios:
        """Returns the OperationRatios instance"""
        ...

    def GetSecurityReference(self, time: typing.Union[datetime.datetime, datetime.date]) -> QuantConnect.Data.Fundamental.SecurityReference:
        """Returns the SecurityReference instance"""
        ...

    def GetValuationRatios(self, time: typing.Union[datetime.datetime, datetime.date]) -> QuantConnect.Data.Fundamental.ValuationRatios:
        """Returns the ValuationRatios instance"""
        ...


class FineFundamental(QuantConnect.Data.UniverseSelection.CoarseFundamental):
    """Definition of the FineFundamental class"""

    @property
    def EndTime(self) -> datetime.datetime:
        """The end time of this data."""
        ...

    @property
    def MarketCap(self) -> int:
        """
        Price * Total SharesOutstanding.
        The most current market cap for example, would be the most recent closing price x the most recent reported shares outstanding.
        For ADR share classes, market cap is price * (ordinary shares outstanding / adr ratio).
        """
        ...

    @property
    def CompanyReference(self) -> QuantConnect.Data.Fundamental.CompanyReference:
        """The instance of the CompanyReference class"""
        ...

    @property
    def SecurityReference(self) -> QuantConnect.Data.Fundamental.SecurityReference:
        """The instance of the SecurityReference class"""
        ...

    @property
    def FinancialStatements(self) -> QuantConnect.Data.Fundamental.FinancialStatements:
        """The instance of the FinancialStatements class"""
        ...

    @property
    def EarningReports(self) -> QuantConnect.Data.Fundamental.EarningReports:
        """The instance of the EarningReports class"""
        ...

    @property
    def OperationRatios(self) -> QuantConnect.Data.Fundamental.OperationRatios:
        """The instance of the OperationRatios class"""
        ...

    @property
    def EarningRatios(self) -> QuantConnect.Data.Fundamental.EarningRatios:
        """The instance of the EarningRatios class"""
        ...

    @property
    def ValuationRatios(self) -> QuantConnect.Data.Fundamental.ValuationRatios:
        """The instance of the ValuationRatios class"""
        ...

    @property
    def CompanyProfile(self) -> QuantConnect.Data.Fundamental.CompanyProfile:
        """The instance of the CompanyProfile class"""
        ...

    @property
    def AssetClassification(self) -> QuantConnect.Data.Fundamental.AssetClassification:
        """The instance of the AssetClassification class"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, time: typing.Union[datetime.datetime, datetime.date], symbol: typing.Union[QuantConnect.Symbol, str]) -> None:
        """Creates a new instance for the given time and security"""
        ...

    @overload
    def __init__(self, time: typing.Union[datetime.datetime, datetime.date], symbol: typing.Union[QuantConnect.Symbol, str], fundamentalInstanceProvider: QuantConnect.Data.Fundamental.FundamentalInstanceProvider) -> None:
        """Creates a new instance for the given time and security"""
        ...

    def Clone(self) -> QuantConnect.Data.BaseData:
        """Clones this fine data instance"""
        ...

    def DefaultResolution(self) -> int:
        """
        This is a daily data set
        
        :returns: This method returns the int value of a member of the QuantConnect.Resolution enum.
        """
        ...

    def GetSource(self, config: QuantConnect.Data.SubscriptionDataConfig, date: typing.Union[datetime.datetime, datetime.date], isLiveMode: bool) -> QuantConnect.Data.SubscriptionDataSource:
        """Return the URL string source of the file. This will be converted to a stream"""
        ...

    def Reader(self, config: QuantConnect.Data.SubscriptionDataConfig, line: str, date: typing.Union[datetime.datetime, datetime.date], isLiveMode: bool) -> QuantConnect.Data.BaseData:
        """
        Reader converts each line of the data source into BaseData objects. Each data type creates its own factory method, and returns a new instance of the object
        each time it is called. The returned object is assumed to be time stamped in the config.ExchangeTimeZone.
        """
        ...

    def SupportedResolutions(self) -> System.Collections.Generic.List[QuantConnect.Resolution]:
        """This is a daily data set"""
        ...


class Fundamental(QuantConnect.Data.Fundamental.FineFundamental):
    """Lean fundamental data class"""

    @property
    def DollarVolume(self) -> float:
        """Gets the day's dollar volume for this symbol"""
        ...

    @property
    def Volume(self) -> int:
        """Gets the day's total volume"""
        ...

    @property
    def HasFundamentalData(self) -> bool:
        """Returns whether the symbol has fundamental data for the given date"""
        ...

    @property
    def PriceFactor(self) -> float:
        """Gets the price factor for the given date"""
        ...

    @property
    def SplitFactor(self) -> float:
        """Gets the split factor for the given date"""
        ...

    @property
    def Value(self) -> float:
        """Gets the raw price"""
        ...

    @overload
    def __init__(self) -> None:
        """Creates a new empty instance"""
        ...

    @overload
    def __init__(self, time: typing.Union[datetime.datetime, datetime.date], symbol: typing.Union[QuantConnect.Symbol, str]) -> None:
        """
        Creates a new instance
        
        :param time: The current time
        :param symbol: The associated symbol
        """
        ...

    def Clone(self) -> QuantConnect.Data.BaseData:
        """
        Will clone the current instance
        
        :returns: The cloned instance.
        """
        ...

    def DefaultResolution(self) -> int:
        """
        Gets the default resolution for this data and security type
        
        :returns: This method returns the int value of a member of the QuantConnect.Resolution enum.
        """
        ...

    def GetSource(self, config: QuantConnect.Data.SubscriptionDataConfig, date: typing.Union[datetime.datetime, datetime.date], isLiveMode: bool) -> QuantConnect.Data.SubscriptionDataSource:
        """Return the URL string source of the file. This will be converted to a stream"""
        ...

    def Reader(self, config: QuantConnect.Data.SubscriptionDataConfig, line: str, date: typing.Union[datetime.datetime, datetime.date], isLiveMode: bool) -> QuantConnect.Data.BaseData:
        """
        Will read a new instance from the given line
        
        :param config: The associated requested configuration
        :param line: The line to parse
        :param date: The current time
        :param isLiveMode: True if live mode
        :returns: A new instance or null.
        """
        ...


class MultiPeriodFieldLong(QuantConnect.Data.Fundamental.MultiPeriodField[int], metaclass=abc.ABCMeta):
    """This class has no documentation."""

    @overload
    def __init__(self) -> None:
        """
        Creates an empty instance
        
        This method is protected.
        """
        ...

    @overload
    def __init__(self, timeProvider: QuantConnect.ITimeProvider, securityIdentifier: QuantConnect.SecurityIdentifier) -> None:
        """
        Creates a new instance
        
        This method is protected.
        """
        ...


