All classes:
- babel.messages.jslexer.Token
- babel.localedata.Alias
- babel.localedata.LocaleDataDict
- babel.plural.PluralRule
- babel.plural.RuleError
- babel.plural._Parser
- babel.plural._Compiler
- babel.plural._PythonCompiler
- babel.plural._GettextCompiler
- babel.plural._JavaScriptCompiler
- babel.plural._UnicodeCompiler
- babel.core.UnknownLocaleError
- babel.core.Locale
- babel.localtime._fallback._FallbackLocalTimezone
- babel.dates.ParseError
- babel.dates.DateTimePattern
- babel.dates.DateTimeFormat
- babel.messages.plurals._PluralTuple
- babel.util.TextWrapper
- babel.util.FixedOffsetTimezone
- babel.messages.catalog.Message
- babel.messages.catalog.TranslationError
- babel.messages.catalog.Catalog
- babel.numbers.UnknownCurrencyError
- babel.numbers.UnsupportedNumberingSystemError
- babel.numbers.UnknownCurrencyFormatError
- babel.numbers.NumberFormatError
- babel.numbers.NumberPattern
- babel.support.Format
- babel.support.LazyProxy
- babel.support.NullTranslations
- babel.support.Translations
- babel.units.UnknownUnitError
- babel.messages.extract._PyOptions
- babel.messages.extract._JSOptions
- babel.messages.extract._FileObj
- babel.messages.pofile.PoFileError
- babel.messages.pofile._NormalizedString
- babel.messages.pofile.PoFileParser
- babel.messages.frontend.BaseError
- babel.messages.frontend.OptionError
- babel.messages.frontend.SetupError
- babel.messages.frontend.ConfigurationError
- babel.messages.frontend.CommandMixin
- babel.messages.frontend.CompileCatalog
- babel.messages.frontend.ExtractMessages
- babel.messages.frontend.InitCatalog
- babel.messages.frontend.UpdateCatalog
- babel.messages.frontend.CommandLineInterface
- babel.messages.setuptools_frontend.compile_catalog
- babel.messages.setuptools_frontend.extract_messages
- babel.messages.setuptools_frontend.init_catalog
- babel.messages.setuptools_frontend.update_catalog
All functions:
  Elements:
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: '...fuzz_lexer'
    functionSourceFile: '...fuzz_lexer'
    functionUses: 0
    functionsReached:
    - atheris.Setup
    - atheris.Fuzz
    - atheris.instrument_all
    - '...fuzz_lexer.main'
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 22
    functionName: '...fuzz_lexer.TestOneInput'
    functionSourceFile: '...fuzz_lexer'
    functionUses: 0
    functionsReached:
    - line_re.findall
    - typing.NamedTuple.__init__
    - rule.match
    - <builtin>.list
    - babel.messages.jslexer.get_rules
    - match.group
    - fdp.ConsumeUnicodeNoSurrogates
    - <builtin>.len
    - rules.append
    - babel.messages.jslexer.indicates_division
    - match.end
    - babel.messages.jslexer.tokenize
    - atheris.FuzzedDataProvider
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.FuzzedDataProvider
    functionSourceFile: atheris
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fdp.ConsumeUnicodeNoSurrogates
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e169580>
    - <ast.Constant object at 0x7f1b4e169190>
    - <ast.Constant object at 0x7f1b4e169bb0>
    - <ast.Constant object at 0x7f1b4e169400>
    argNames:
    - source
    - jsx
    - dotted
    - template_string
    - lineno
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 167
    functionName: babel.messages.jslexer.tokenize
    functionSourceFile: babel.messages.jslexer
    functionUses: 3
    functionsReached:
    - line_re.findall
    - typing.NamedTuple.__init__
    - rule.match
    - babel.messages.jslexer.get_rules
    - match.group
    - <builtin>.len
    - rules.append
    - babel.messages.jslexer.indicates_division
    - match.end
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.list
    functionSourceFile: <builtin>
    functionUses: 33
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 36
    functionName: '...fuzz_lexer.main'
    functionSourceFile: '...fuzz_lexer'
    functionUses: 1
    functionsReached:
    - atheris.Setup
    - atheris.Fuzz
    - atheris.instrument_all
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.instrument_all
    functionSourceFile: atheris
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.Setup
    functionSourceFile: atheris
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.Fuzz
    functionSourceFile: atheris
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: babel
    functionSourceFile: babel
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: -1
    functionName: babel.core
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached:
    - babel.plural.skip_token
    - babel.plural.test_next_token
    - babel.plural.ident_node
    - s.split
    - babel.plural._Parser.__init__
    - result.append
    - babel.plural._Parser.condition
    - babel.plural._Parser.value
    - tokens.pop
    - babel.plural.negate
    - rules.items
    - babel.plural.range_list_node
    - babel.plural._Parser.expr
    - match.group
    - <builtin>.isinstance
    - match.end
    - babel.plural.PluralRule.__init__
    - babel.plural._Parser.and_condition
    - babel.plural._Parser.range_or_value
    - babel.plural.tokenize_rule
    - <builtin>.len
    - <builtin>.repr
    - <builtin>.int
    - <builtin>.sorted
    - range_list.append
    - babel.plural._Parser.relation
    - found.add
    - rule.match
    - babel.plural._Parser.expect
    - <builtin>.set
    - babel.plural.value_node
    - babel.plural._Parser.range_list
    - babel.plural._Parser.newfangled_relation
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - rules
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 106
    functionName: babel.plural.PluralRule.__init__
    functionSourceFile: babel.plural
    functionUses: 6
    functionsReached:
    - babel.plural.skip_token
    - babel.plural.test_next_token
    - babel.plural.ident_node
    - s.split
    - babel.plural._Parser.__init__
    - result.append
    - babel.plural._Parser.condition
    - babel.plural._Parser.value
    - tokens.pop
    - babel.plural.negate
    - rules.items
    - babel.plural.range_list_node
    - babel.plural._Parser.expr
    - match.group
    - <builtin>.isinstance
    - match.end
    - babel.plural._Parser.and_condition
    - babel.plural._Parser.range_or_value
    - babel.plural.tokenize_rule
    - <builtin>.len
    - <builtin>.repr
    - <builtin>.int
    - <builtin>.sorted
    - range_list.append
    - babel.plural._Parser.relation
    - found.add
    - rule.match
    - babel.plural._Parser.expect
    - <builtin>.set
    - babel.plural.value_node
    - babel.plural._Parser.range_list
    - babel.plural._Parser.newfangled_relation
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 60
    functionName: babel.core._raise_no_data_error
    functionSourceFile: babel.core
    functionUses: 109
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - RuntimeError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - key
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 71
    functionName: babel.core.get_global
    functionSourceFile: babel.core
    functionUses: 108
    functionsReached:
    - os.path.join
    - pickle.load
    - <builtin>.open
    - babel.core._raise_no_data_error
    - os.path.isfile
    - _global_data.get
    - os.path.dirname
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.dirname
    functionSourceFile: os
    functionUses: 113
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.join
    functionSourceFile: os
    functionUses: 123
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.isfile
    functionSourceFile: os
    functionUses: 113
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.open
    functionSourceFile: <builtin>
    functionUses: 125
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pickle.load
    functionSourceFile: pickle
    functionUses: 109
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _global_data.get
    functionSourceFile: <builtin>
    functionUses: 109
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - identifier
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 135
    functionName: babel.core.UnknownLocaleError.__init__
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached:
    - Exception.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: Exception.__init__
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e150700>
    - <ast.Constant object at 0x7f1b4e1503a0>
    - <ast.Constant object at 0x7f1b4e1507c0>
    - <ast.Constant object at 0x7f1b4e150040>
    argNames:
    - self
    - language
    - territory
    - script
    - variant
    - modifier
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 178
    functionName: babel.core.Locale.__init__
    functionSourceFile: babel.core
    functionUses: 101
    functionsReached:
    - babel.localedata.resolve_locale_filename
    - os.path.join
    - <builtin>.str
    - babel.localedata.exists
    - identifier.partition
    - babel.localedata.normalize_locale
    - os.path.exists
    - itertools.chain.from_iterable
    - name.strip
    - os.path.basename
    - locale_id.lower
    - _windows_reserved_name_re.match
    - <builtin>.isinstance
    - <builtin>.bool
    - os.path.splitext
    linkageType: pythonLinkage
    raised:
    - UnknownLocaleError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.str
    functionSourceFile: <builtin>
    functionUses: 151
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: identifier.partition
    functionSourceFile: <builtin>
    functionUses: 111
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 63
    functionName: babel.localedata.exists
    functionSourceFile: babel.localedata
    functionUses: 102
    functionsReached:
    - babel.localedata.resolve_locale_filename
    - os.path.join
    - babel.localedata.normalize_locale
    - os.path.exists
    - itertools.chain.from_iterable
    - name.strip
    - os.path.basename
    - locale_id.lower
    - _windows_reserved_name_re.match
    - <builtin>.isinstance
    - <builtin>.bool
    - os.path.splitext
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e5dd520>
    - <ast.Name object at 0x7f1b4e5ddcd0>
    argNames:
    - cls
    - category
    - aliases
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 224
    functionName: babel.core.Locale.default
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.default_locale
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - locale.split
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - os.getenv
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 1
    IfCount: 8
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e69db80>
    - <ast.Name object at 0x7f1b4e69d880>
    argNames:
    - category
    - aliases
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1113
    functionName: babel.core.default_locale
    functionSourceFile: babel.core
    functionUses: 5
    functionsReached:
    - identifier.partition
    - babel.core.parse_locale
    - lang.isalpha
    - sep.join
    - babel.core.get_locale_identifier
    - parts.pop
    - identifier.split
    - <builtin>.len
    - os.getenv
    - <builtin>.isinstance
    - <builtin>.tuple
    - <builtin>.filter
    - locale.split
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 14
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 21
    ICount: 1
    IfCount: 14
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e2c2820>
    - <ast.Constant object at 0x7f1b4e2c20d0>
    argNames:
    - cls
    - identifier
    - sep
    - resolve_likely_subtags
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 286
    functionName: babel.core.Locale.parse
    functionSourceFile: babel.core
    functionUses: 98
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised:
    - TypeError
    - UnknownLocaleError
    - ValueError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e8177f0>
    - <ast.Name object at 0x7f1b4e817430>
    argNames:
    - cls
    - preferred
    - available
    - sep
    - aliases
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 253
    functionName: babel.core.Locale.negotiate
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - alias.replace
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - alias.lower
    - <builtin>.bool
    - locale.split
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.core.negotiate_locale
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - a.lower
    - name.strip
    - parts.pop
    - locale.lower
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    - aliases.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e7fe370>
    - <ast.Name object at 0x7f1b4e7fe310>
    argNames:
    - preferred
    - available
    - sep
    - aliases
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1173
    functionName: babel.core.negotiate_locale
    functionSourceFile: babel.core
    functionUses: 1
    functionsReached:
    - a.lower
    - locale.lower
    - <builtin>.len
    - alias.lower
    - locale.split
    - alias.replace
    - aliases.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.isinstance
    functionSourceFile: <builtin>
    functionUses: 214
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 1
    IfCount: 10
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e6b9400>
    argNames:
    - identifier
    - sep
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1241
    functionName: babel.core.parse_locale
    functionSourceFile: babel.core
    functionUses: 107
    functionsReached:
    - identifier.partition
    - lang.isalpha
    - parts.pop
    - identifier.split
    - <builtin>.len
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e465e80>
    argNames:
    - tup
    - sep
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1342
    functionName: babel.core.get_locale_identifier
    functionSourceFile: babel.core
    functionUses: 105
    functionsReached:
    - <builtin>.len
    - <builtin>.filter
    - <builtin>.tuple
    - sep.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - parts
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 367
    functionName: babel.core.Locale.parse._try_load
    functionSourceFile: babel.core
    functionUses: 100
    functionsReached:
    - babel.localedata.resolve_locale_filename
    - os.path.join
    - <builtin>.str
    - babel.localedata.exists
    - identifier.partition
    - babel.localedata.normalize_locale
    - os.path.exists
    - itertools.chain.from_iterable
    - name.strip
    - os.path.basename
    - locale_id.lower
    - babel.core.Locale.__init__
    - _windows_reserved_name_re.match
    - <builtin>.isinstance
    - <builtin>.bool
    - os.path.splitext
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - parts
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 373
    functionName: babel.core.Locale.parse._try_load_reducing
    functionSourceFile: babel.core
    functionUses: 99
    functionsReached:
    - babel.localedata.resolve_locale_filename
    - os.path.join
    - <builtin>.str
    - babel.localedata.exists
    - identifier.partition
    - babel.localedata.normalize_locale
    - os.path.exists
    - itertools.chain.from_iterable
    - name.strip
    - os.path.basename
    - locale_id.lower
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - _windows_reserved_name_re.match
    - <builtin>.isinstance
    - <builtin>.bool
    - os.path.splitext
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.len
    functionSourceFile: <builtin>
    functionUses: 169
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 440
    functionName: babel.core.Locale.__eq__
    functionSourceFile: babel.core
    functionUses: 1
    functionsReached:
    - <builtin>.hasattr
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.hasattr
    functionSourceFile: <builtin>
    functionUses: 26
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.getattr
    functionSourceFile: <builtin>
    functionUses: 34
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 452
    functionName: babel.core.Locale.__ne__
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached:
    - babel.core.Locale.__eq__
    - <builtin>.hasattr
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 455
    functionName: babel.core.Locale.__hash__
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached:
    - <builtin>.hash
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.hash
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 458
    functionName: babel.core.Locale.__repr__
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached:
    - parameters.append
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parameters.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 466
    functionName: babel.core.Locale.__str__
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached:
    - sep.join
    - babel.core.get_locale_identifier
    - <builtin>.len
    - <builtin>.tuple
    - <builtin>.filter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 472
    functionName: babel.core.Locale._data
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.merge
    - _cache_lock.acquire
    - lang.isalpha
    - val1.copy
    - babel.core.get_global
    - os.path.basename
    - others.copy
    - _global_data.get
    - os.path.splitext
    - os.path.join
    - _cache.get
    - collections.abc.MutableMapping.get
    - dict2.items
    - os.path.dirname
    - <builtin>.isinstance
    - babel.core.parse_locale
    - name.split
    - babel.localedata.LocaleDataDict.__init__
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - parts.pop
    - identifier.split
    - babel.localedata._is_non_likely_script
    - _windows_reserved_name_re.match
    - _cache_lock.release
    - babel.localedata.load
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 4
    IfCount: 5
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e57c0a0>
    argNames:
    - name
    - merge_inherited
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 120
    functionName: babel.localedata.load
    functionSourceFile: babel.localedata
    functionUses: 1
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.merge
    - _cache_lock.acquire
    - lang.isalpha
    - val1.copy
    - babel.core.get_global
    - os.path.basename
    - others.copy
    - _global_data.get
    - os.path.splitext
    - os.path.join
    - _cache.get
    - collections.abc.MutableMapping.get
    - dict2.items
    - os.path.dirname
    - <builtin>.isinstance
    - babel.core.parse_locale
    - name.split
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - parts.pop
    - identifier.split
    - babel.localedata._is_non_likely_script
    - _windows_reserved_name_re.match
    - _cache_lock.release
    - babel.localedata.load
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e579340>
    argNames:
    - self
    - data
    - base
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 247
    functionName: babel.localedata.LocaleDataDict.__init__
    functionSourceFile: ''
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 5
    IfCount: 7
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e526a90>
    argNames:
    - self
    - locale
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 477
    functionName: babel.core.Locale.get_display_name
    functionSourceFile: babel.core
    functionUses: 1
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - details.append
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: details.append
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.property
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: babel.core.Locale
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached:
    - <builtin>.property
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e4ba6a0>
    argNames:
    - self
    - locale
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 528
    functionName: babel.core.Locale.get_language_name
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e4ba3a0>
    argNames:
    - self
    - locale
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 553
    functionName: babel.core.Locale.get_territory_name
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e4ffa60>
    argNames:
    - self
    - locale
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 570
    functionName: babel.core.Locale.get_script_name
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 588
    functionName: babel.core.Locale.english_name
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached:
    - babel.core.Locale.get_display_name
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - details.append
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 602
    functionName: babel.core.Locale.languages
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 614
    functionName: babel.core.Locale.scripts
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 626
    functionName: babel.core.Locale.territories
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 638
    functionName: babel.core.Locale.variants
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 649
    functionName: babel.core.Locale.currencies
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 663
    functionName: babel.core.Locale.currency_symbols
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 674
    functionName: babel.core.Locale.number_symbols
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 690
    functionName: babel.core.Locale.other_numbering_systems
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 704
    functionName: babel.core.Locale.default_numbering_system
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 712
    functionName: babel.core.Locale.decimal_formats
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 724
    functionName: babel.core.Locale.compact_decimal_formats
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 736
    functionName: babel.core.Locale.currency_formats
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 750
    functionName: babel.core.Locale.compact_currency_formats
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 762
    functionName: babel.core.Locale.percent_formats
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 774
    functionName: babel.core.Locale.scientific_formats
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 788
    functionName: babel.core.Locale.periods
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached:
    - babel.localedata.LocaleDataDict.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 800
    functionName: babel.core.Locale.day_periods
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 808
    functionName: babel.core.Locale.day_period_rules
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached:
    - babel.localedata.LocaleDataDict.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 813
    functionName: babel.core.Locale.days
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 822
    functionName: babel.core.Locale.months
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 831
    functionName: babel.core.Locale.quarters
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 840
    functionName: babel.core.Locale.eras
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 854
    functionName: babel.core.Locale.time_zones
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 868
    functionName: babel.core.Locale.meta_zones
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 885
    functionName: babel.core.Locale.zone_formats
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 901
    functionName: babel.core.Locale.first_week_day
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 912
    functionName: babel.core.Locale.weekend_start
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 921
    functionName: babel.core.Locale.weekend_end
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 930
    functionName: babel.core.Locale.min_week_days
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 940
    functionName: babel.core.Locale.date_formats
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 954
    functionName: babel.core.Locale.time_formats
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 968
    functionName: babel.core.Locale.datetime_formats
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 982
    functionName: babel.core.Locale.datetime_skeletons
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 995
    functionName: babel.core.Locale.interval_formats
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1017
    functionName: babel.core.Locale.plural_form
    functionSourceFile: babel.core
    functionUses: 24
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1032
    functionName: babel.core.Locale.list_patterns
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1048
    functionName: babel.core.Locale.ordinal_form
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1065
    functionName: babel.core.Locale.measurement_systems
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1077
    functionName: babel.core.Locale.character_order
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1088
    functionName: babel.core.Locale.text_direction
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1099
    functionName: babel.core.Locale.unit_display_names
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.getenv
    functionSourceFile: os
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: locale.split
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: a.lower
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: locale.lower
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: aliases.get
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: alias.replace
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: alias.lower
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: identifier.split
    functionSourceFile: <builtin>
    functionUses: 108
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parts.pop
    functionSourceFile: <builtin>
    functionUses: 108
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: lang.isalpha
    functionSourceFile: <builtin>
    functionUses: 108
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.tuple
    functionSourceFile: <builtin>
    functionUses: 141
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.filter
    functionSourceFile: <builtin>
    functionUses: 108
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sep.join
    functionSourceFile: <builtin>
    functionUses: 106
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1371
    functionName: babel.core.get_cldr_version
    functionSourceFile: babel.core
    functionUses: 0
    functionsReached:
    - pickle.load
    - <builtin>.open
    - os.path.join
    - <builtin>.str
    - babel.core._raise_no_data_error
    - babel.core.get_global
    - os.path.isfile
    - _global_data.get
    - os.path.dirname
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: babel.plural
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached:
    - re.compile
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - source
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 22
    functionName: babel.plural.extract_operands
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached:
    - <builtin>.abs
    - n.as_tuple
    - <builtin>.str
    - <builtin>.len
    - <builtin>.isinstance
    - <builtin>.int
    - trailing.rstrip
    - decimal.Decimal
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.abs
    functionSourceFile: <builtin>
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.int
    functionSourceFile: <builtin>
    functionUses: 80
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: decimal.Decimal
    functionSourceFile: decimal
    functionUses: 25
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: n.as_tuple
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: trailing.rstrip
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rules.items
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.set
    functionSourceFile: <builtin>
    functionUses: 42
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.sorted
    functionSourceFile: <builtin>
    functionUses: 44
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: found.add
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - string
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 443
    functionName: babel.plural._Parser.__init__
    functionSourceFile: babel.plural
    functionUses: 7
    functionsReached:
    - babel.plural.skip_token
    - babel.plural.test_next_token
    - babel.plural.ident_node
    - s.split
    - result.append
    - babel.plural._Parser.condition
    - babel.plural._Parser.value
    - tokens.pop
    - babel.plural.negate
    - babel.plural.range_list_node
    - babel.plural._Parser.expr
    - match.group
    - match.end
    - babel.plural._Parser.and_condition
    - babel.plural._Parser.range_or_value
    - <builtin>.len
    - babel.plural.tokenize_rule
    - <builtin>.repr
    - <builtin>.int
    - range_list.append
    - babel.plural._Parser.relation
    - rule.match
    - babel.plural._Parser.expect
    - babel.plural.value_node
    - babel.plural._Parser.range_list
    - babel.plural._Parser.newfangled_relation
    linkageType: pythonLinkage
    raised:
    - RuleError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 128
    functionName: babel.plural.PluralRule.__repr__
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached:
    - <builtin>.type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.type
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - rules
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 134
    functionName: babel.plural.PluralRule.parse
    functionSourceFile: babel.plural
    functionUses: 4
    functionsReached:
    - babel.plural.skip_token
    - babel.plural.test_next_token
    - babel.plural.ident_node
    - s.split
    - babel.plural._Parser.__init__
    - result.append
    - babel.plural._Parser.condition
    - babel.plural._Parser.value
    - tokens.pop
    - babel.plural.negate
    - rules.items
    - babel.plural.range_list_node
    - babel.plural._Parser.expr
    - match.group
    - <builtin>.isinstance
    - match.end
    - babel.plural.PluralRule.__init__
    - babel.plural._Parser.and_condition
    - babel.plural._Parser.range_or_value
    - babel.plural.tokenize_rule
    - <builtin>.len
    - <builtin>.repr
    - <builtin>.int
    - <builtin>.sorted
    - range_list.append
    - babel.plural._Parser.relation
    - found.add
    - rule.match
    - babel.plural._Parser.expect
    - <builtin>.set
    - babel.plural.value_node
    - babel.plural._Parser.range_list
    - babel.plural._Parser.newfangled_relation
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 149
    functionName: babel.plural.PluralRule.rules
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached:
    - babel.plural._Compiler.compile
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - arg
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 549
    functionName: babel.plural._Compiler.compile
    functionSourceFile: babel.plural
    functionUses: 10
    functionsReached:
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 160
    functionName: babel.plural.PluralRule.tags
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached:
    - <builtin>.frozenset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.frozenset
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 167
    functionName: babel.plural.PluralRule.__getstate__
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - abstract
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 170
    functionName: babel.plural.PluralRule.__setstate__
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - n
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 173
    functionName: babel.plural.PluralRule.__call__
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached:
    - babel.plural._Compiler.compile
    - babel.plural.skip_token
    - <builtin>.getattr
    - babel.plural.test_next_token
    - babel.plural.ident_node
    - babel.plural.PluralRule.parse
    - s.split
    - babel.plural._Parser.__init__
    - <builtin>.str
    - result.append
    - babel.plural._Parser.condition
    - babel.plural._Parser.value
    - <builtin>.hasattr
    - tokens.pop
    - babel.plural.negate
    - rules.items
    - babel.plural.range_list_node
    - babel.plural._Parser.expr
    - match.group
    - <builtin>.isinstance
    - <builtin>.compile
    - match.end
    - babel.plural.PluralRule.__init__
    - babel.plural._Parser.and_condition
    - babel.plural._Parser.range_or_value
    - babel.plural.tokenize_rule
    - <builtin>.len
    - <builtin>.repr
    - <builtin>.int
    - <builtin>.sorted
    - range_list.append
    - babel.plural.to_python
    - babel.plural._Parser.relation
    - <builtin>.eval
    - found.add
    - rule.match
    - babel.plural._Parser.expect
    - <builtin>.set
    - babel.plural.value_node
    - babel.plural._Parser.range_list
    - babel.plural._Parser.newfangled_relation
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - rule
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 202
    functionName: babel.plural.to_python
    functionSourceFile: babel.plural
    functionUses: 1
    functionsReached:
    - babel.plural._Compiler.compile
    - <builtin>.getattr
    - babel.plural.skip_token
    - babel.plural.test_next_token
    - babel.plural.ident_node
    - babel.plural.PluralRule.parse
    - s.split
    - babel.plural._Parser.__init__
    - <builtin>.str
    - result.append
    - babel.plural._Parser.condition
    - babel.plural._Parser.value
    - tokens.pop
    - babel.plural.negate
    - rules.items
    - babel.plural.range_list_node
    - babel.plural._Parser.expr
    - match.group
    - <builtin>.isinstance
    - <builtin>.compile
    - match.end
    - babel.plural.PluralRule.__init__
    - babel.plural._Parser.and_condition
    - babel.plural._Parser.range_or_value
    - babel.plural.tokenize_rule
    - <builtin>.len
    - <builtin>.repr
    - <builtin>.int
    - <builtin>.sorted
    - range_list.append
    - babel.plural._Parser.relation
    - <builtin>.eval
    - found.add
    - rule.match
    - babel.plural._Parser.expect
    - <builtin>.set
    - babel.plural.value_node
    - babel.plural._Parser.range_list
    - babel.plural._Parser.newfangled_relation
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - rule
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 179
    functionName: babel.plural.to_javascript
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached:
    - babel.plural._Compiler.compile
    - <builtin>.getattr
    - babel.plural.skip_token
    - babel.plural.test_next_token
    - babel.plural.ident_node
    - babel.plural.PluralRule.parse
    - s.split
    - babel.plural._Parser.__init__
    - result.append
    - babel.plural._Parser.condition
    - babel.plural._Parser.value
    - tokens.pop
    - babel.plural.negate
    - rules.items
    - babel.plural.range_list_node
    - babel.plural._Parser.expr
    - match.group
    - <builtin>.isinstance
    - match.end
    - babel.plural.PluralRule.__init__
    - babel.plural._Parser.and_condition
    - babel.plural._Parser.range_or_value
    - babel.plural.tokenize_rule
    - <builtin>.len
    - <builtin>.repr
    - <builtin>.int
    - <builtin>.sorted
    - range_list.append
    - babel.plural._Parser.relation
    - found.add
    - rule.match
    - babel.plural._Parser.expect
    - <builtin>.set
    - babel.plural.value_node
    - babel.plural._Parser.range_list
    - babel.plural._Parser.newfangled_relation
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: result.append
    functionSourceFile: <builtin>
    functionUses: 36
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.compile
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.eval
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - rule
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 244
    functionName: babel.plural.to_gettext
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached:
    - babel.plural._Compiler.compile
    - <builtin>.getattr
    - babel.plural.skip_token
    - babel.plural.test_next_token
    - babel.plural.ident_node
    - babel.plural.PluralRule.parse
    - s.split
    - babel.plural._Parser.__init__
    - result.append
    - babel.plural._Parser.condition
    - babel.plural._Parser.value
    - tokens.pop
    - babel.plural.negate
    - rules.items
    - babel.plural.range_list_node
    - babel.plural._Parser.expr
    - match.group
    - <builtin>.isinstance
    - match.end
    - babel.plural.PluralRule.__init__
    - babel.plural._Parser.and_condition
    - babel.plural._Parser.range_or_value
    - <builtin>.len
    - babel.plural.tokenize_rule
    - <builtin>.repr
    - <builtin>.int
    - <builtin>.sorted
    - range_list.append
    - babel.plural._Parser.relation
    - found.add
    - rule.match
    - babel.plural._Parser.expect
    - <builtin>.set
    - babel.plural.value_node
    - babel.plural._Parser.range_list
    - babel.plural._Parser.newfangled_relation
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - num
    - range_list
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 267
    functionName: babel.plural.in_range_list
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached:
    - <builtin>.int
    - babel.plural.within_range_list
    - <builtin>.any
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - num
    - range_list
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 290
    functionName: babel.plural.within_range_list
    functionSourceFile: babel.plural
    functionUses: 1
    functionsReached:
    - <builtin>.any
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.any
    functionSourceFile: <builtin>
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - a
    - b
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 313
    functionName: babel.plural.cldr_modulo
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: re.compile
    functionSourceFile: re
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - s
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 360
    functionName: babel.plural.tokenize_rule
    functionSourceFile: babel.plural
    functionUses: 8
    functionsReached:
    - result.append
    - rule.match
    - <builtin>.len
    - match.group
    - s.split
    - match.end
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: s.split
    functionSourceFile: <builtin>
    functionUses: 19
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rule.match
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: match.end
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: match.group
    functionSourceFile: <builtin>
    functionUses: 19
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4ee501f0>
    argNames:
    - tokens
    - type_
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 378
    functionName: babel.plural.test_next_token
    functionSourceFile: babel.plural
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4ee50760>
    argNames:
    - tokens
    - type_
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 386
    functionName: babel.plural.skip_token
    functionSourceFile: babel.plural
    functionUses: 17
    functionsReached:
    - tokens.pop
    - babel.plural.test_next_token
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tokens.pop
    functionSourceFile: <builtin>
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 391
    functionName: babel.plural.value_node
    functionSourceFile: babel.plural
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 395
    functionName: babel.plural.ident_node
    functionSourceFile: babel.plural
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - range_list
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 399
    functionName: babel.plural.range_list_node
    functionSourceFile: babel.plural
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - rv
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 405
    functionName: babel.plural.negate
    functionSourceFile: babel.plural
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 464
    functionName: babel.plural._Parser.condition
    functionSourceFile: babel.plural
    functionUses: 8
    functionsReached:
    - babel.plural._Parser.expect
    - babel.plural._Parser.and_condition
    - babel.plural._Parser.value
    - babel.plural._Parser.range_or_value
    - babel.plural.value_node
    - tokens.pop
    - babel.plural.skip_token
    - babel.plural.negate
    - babel.plural.test_next_token
    - babel.plural._Parser.expr
    - babel.plural._Parser.range_list
    - babel.plural.range_list_node
    - <builtin>.repr
    - <builtin>.int
    - babel.plural.ident_node
    - babel.plural._Parser.newfangled_relation
    - range_list.append
    - babel.plural._Parser.relation
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4ed641f0>
    - <ast.Constant object at 0x7f1b4ed64190>
    argNames:
    - self
    - type_
    - value
    - term
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 454
    functionName: babel.plural._Parser.expect
    functionSourceFile: babel.plural
    functionUses: 16
    functionsReached:
    - <builtin>.repr
    - tokens.pop
    - babel.plural.skip_token
    - babel.plural.test_next_token
    linkageType: pythonLinkage
    raised:
    - RuleError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.repr
    functionSourceFile: <builtin>
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 470
    functionName: babel.plural._Parser.and_condition
    functionSourceFile: babel.plural
    functionUses: 9
    functionsReached:
    - babel.plural._Parser.expect
    - babel.plural._Parser.value
    - babel.plural._Parser.range_or_value
    - babel.plural.value_node
    - tokens.pop
    - babel.plural.negate
    - babel.plural.range_list_node
    - babel.plural.skip_token
    - babel.plural._Parser.expr
    - babel.plural._Parser.range_list
    - babel.plural.test_next_token
    - <builtin>.repr
    - babel.plural._Parser.newfangled_relation
    - <builtin>.int
    - babel.plural.ident_node
    - range_list.append
    - babel.plural._Parser.relation
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 476
    functionName: babel.plural._Parser.relation
    functionSourceFile: babel.plural
    functionUses: 10
    functionsReached:
    - babel.plural._Parser.expect
    - babel.plural._Parser.value
    - babel.plural._Parser.range_or_value
    - babel.plural.value_node
    - tokens.pop
    - babel.plural.negate
    - babel.plural.range_list_node
    - babel.plural.skip_token
    - babel.plural._Parser.expr
    - babel.plural._Parser.range_list
    - babel.plural.test_next_token
    - <builtin>.repr
    - babel.plural._Parser.newfangled_relation
    - <builtin>.int
    - babel.plural.ident_node
    - range_list.append
    linkageType: pythonLinkage
    raised:
    - RuleError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 516
    functionName: babel.plural._Parser.expr
    functionSourceFile: babel.plural
    functionUses: 11
    functionsReached:
    - babel.plural._Parser.expect
    - babel.plural._Parser.value
    - babel.plural.value_node
    - tokens.pop
    - babel.plural.skip_token
    - babel.plural.test_next_token
    - <builtin>.repr
    - babel.plural.ident_node
    - <builtin>.int
    linkageType: pythonLinkage
    raised:
    - RuleError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 527
    functionName: babel.plural._Parser.value
    functionSourceFile: babel.plural
    functionUses: 15
    functionsReached:
    - babel.plural._Parser.expect
    - babel.plural.value_node
    - tokens.pop
    - babel.plural.skip_token
    - babel.plural.test_next_token
    - <builtin>.repr
    - <builtin>.int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - left
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 493
    functionName: babel.plural._Parser.newfangled_relation
    functionSourceFile: babel.plural
    functionUses: 11
    functionsReached:
    - babel.plural._Parser.expect
    - babel.plural._Parser.value
    - babel.plural._Parser.range_or_value
    - babel.plural.value_node
    - tokens.pop
    - babel.plural.range_list_node
    - babel.plural.negate
    - babel.plural.skip_token
    - babel.plural.test_next_token
    - babel.plural._Parser.range_list
    - <builtin>.repr
    - <builtin>.int
    - range_list.append
    linkageType: pythonLinkage
    raised:
    - RuleError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 510
    functionName: babel.plural._Parser.range_list
    functionSourceFile: babel.plural
    functionUses: 12
    functionsReached:
    - babel.plural._Parser.expect
    - babel.plural._Parser.value
    - babel.plural._Parser.range_or_value
    - babel.plural.value_node
    - tokens.pop
    - babel.plural.range_list_node
    - babel.plural.skip_token
    - babel.plural.test_next_token
    - <builtin>.repr
    - <builtin>.int
    - range_list.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 503
    functionName: babel.plural._Parser.range_or_value
    functionSourceFile: babel.plural
    functionUses: 13
    functionsReached:
    - babel.plural._Parser.expect
    - babel.plural._Parser.value
    - babel.plural.value_node
    - tokens.pop
    - babel.plural.skip_token
    - babel.plural.test_next_token
    - <builtin>.repr
    - <builtin>.int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: range_list.append
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - tmpl
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 531
    functionName: babel.plural._binary_compiler
    functionSourceFile: babel.plural
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: babel.plural._binary_compiler.<lambda1>
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - tmpl
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 536
    functionName: babel.plural._unary_compiler
    functionSourceFile: babel.plural
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: babel.plural._unary_compiler.<lambda1>
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: babel.plural.<lambda1>
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: babel.plural._Compiler.<lambda1>
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: babel.plural._Compiler.<lambda2>
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: babel.plural._Compiler.<lambda3>
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: babel.plural._Compiler.<lambda4>
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: babel.plural._Compiler.<lambda5>
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: babel.plural._Compiler.<lambda6>
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: babel.plural._Compiler.<lambda7>
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: babel.plural._Compiler.<lambda8>
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: babel.plural._Compiler.<lambda9>
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached:
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: babel.plural._Compiler
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached:
    - babel.plural._unary_compiler
    - babel.plural._binary_compiler
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - method
    - expr
    - range_list
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 569
    functionName: babel.plural._Compiler.compile_relation
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: babel.plural._PythonCompiler
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached:
    - babel.plural._unary_compiler
    - babel.plural._binary_compiler
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - method
    - expr
    - range_list
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 581
    functionName: babel.plural._PythonCompiler.compile_relation
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached:
    - method.upper
    - babel.plural._Compiler.compile
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: method.upper
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - method
    - expr
    - range_list
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 597
    functionName: babel.plural._GettextCompiler.compile_relation
    functionSourceFile: babel.plural
    functionUses: 1
    functionsReached:
    - babel.plural._Compiler.compile
    - rv.append
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rv.append
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: babel.plural._JavaScriptCompiler.<lambda1>
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - method
    - expr
    - range_list
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 621
    functionName: babel.plural._JavaScriptCompiler.compile_relation
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached:
    - babel.plural._Compiler.compile
    - rv.append
    - babel.plural._GettextCompiler.compile_relation
    - <builtin>.getattr
    - babel.plural._JavaScriptCompiler.compile_relation
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: babel.plural._UnicodeCompiler
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached:
    - babel.plural._binary_compiler
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - relation
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 642
    functionName: babel.plural._UnicodeCompiler.compile_not
    functionSourceFile: babel.plural
    functionUses: 0
    functionsReached:
    - babel.plural._Compiler.compile
    - ranges.append
    - babel.plural._UnicodeCompiler.compile_relation
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e644af0>
    argNames:
    - self
    - method
    - expr
    - range_list
    - negated
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 645
    functionName: babel.plural._UnicodeCompiler.compile_relation
    functionSourceFile: babel.plural
    functionUses: 1
    functionsReached:
    - babel.plural._Compiler.compile
    - ranges.append
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ranges.append
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: babel.localedata
    functionSourceFile: babel.localedata
    functionUses: 0
    functionsReached:
    - os.path.join
    - threading.RLock
    - re.compile
    - os.path.dirname
    - functools.lru_cache
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: threading.RLock
    functionSourceFile: threading
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 33
    functionName: babel.localedata.normalize_locale
    functionSourceFile: babel.localedata
    functionUses: 103
    functionsReached:
    - name.strip
    - <builtin>.isinstance
    - locale_id.lower
    - itertools.chain.from_iterable
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: name.strip
    functionSourceFile: <builtin>
    functionUses: 104
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: itertools.chain.from_iterable
    functionSourceFile: itertools
    functionUses: 104
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: locale_id.lower
    functionSourceFile: <builtin>
    functionUses: 104
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 47
    functionName: babel.localedata.resolve_locale_filename
    functionSourceFile: babel.localedata
    functionUses: 105
    functionsReached:
    - os.path.join
    - os.path.basename
    - os.path.splitext
    - _windows_reserved_name_re.match
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.basename
    functionSourceFile: os
    functionUses: 113
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.splitext
    functionSourceFile: os
    functionUses: 108
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _windows_reserved_name_re.match
    functionSourceFile: <builtin>
    functionUses: 106
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.exists
    functionSourceFile: os
    functionUses: 109
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.bool
    functionSourceFile: <builtin>
    functionUses: 108
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: functools.lru_cache
    functionSourceFile: functools
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 79
    functionName: babel.localedata.locale_identifiers
    functionSourceFile: babel.localedata
    functionUses: 3
    functionsReached:
    - os.listdir
    - os.path.splitext
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.listdir
    functionSourceFile: os
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 99
    functionName: babel.localedata._is_non_likely_script
    functionSourceFile: babel.localedata
    functionUses: 2
    functionsReached:
    - pickle.load
    - <builtin>.open
    - os.path.join
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.core.parse_locale
    - lang.isalpha
    - babel.core.get_global
    - parts.pop
    - identifier.split
    - os.path.isfile
    - _global_data.get
    - <builtin>.len
    - os.path.dirname
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _cache_lock.acquire
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _cache.get
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: name.split
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 3
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - dict1
    - dict2
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 176
    functionName: babel.localedata.merge
    functionSourceFile: babel.localedata
    functionUses: 3
    functionsReached:
    - babel.localedata.merge
    - collections.abc.MutableMapping.get
    - val1.copy
    - dict2.items
    - others.copy
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _cache_lock.release
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dict2.items
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: collections.abc.MutableMapping.get
    functionSourceFile: collections
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: others.copy
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: val1.copy
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - keys
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 216
    functionName: babel.localedata.Alias.__init__
    functionSourceFile: babel.localedata
    functionUses: 0
    functionsReached:
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 219
    functionName: babel.localedata.Alias.__repr__
    functionSourceFile: babel.localedata
    functionUses: 0
    functionsReached:
    - <builtin>.type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - data
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 222
    functionName: babel.localedata.Alias.resolve
    functionSourceFile: babel.localedata
    functionUses: 0
    functionsReached:
    - alias.resolve
    - data.resolve
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: data.resolve
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: alias.resolve
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 257
    functionName: babel.localedata.LocaleDataDict.__len__
    functionSourceFile: babel.localedata
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 260
    functionName: babel.localedata.LocaleDataDict.__iter__
    functionSourceFile: babel.localedata
    functionUses: 0
    functionsReached:
    - <builtin>.iter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.iter
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 263
    functionName: babel.localedata.LocaleDataDict.__getitem__
    functionSourceFile: babel.localedata
    functionUses: 0
    functionsReached:
    - collections.abc.MutableMapping.resolve
    - babel.localedata.merge
    - collections.abc.MutableMapping.get
    - val1.copy
    - dict2.items
    - babel.localedata.LocaleDataDict.__init__
    - alias.resolve
    - others.copy
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: collections.abc.MutableMapping.resolve
    functionSourceFile: collections
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - key
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 277
    functionName: babel.localedata.LocaleDataDict.__setitem__
    functionSourceFile: babel.localedata
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 280
    functionName: babel.localedata.LocaleDataDict.__delitem__
    functionSourceFile: babel.localedata
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 283
    functionName: babel.localedata.LocaleDataDict.copy
    functionSourceFile: babel.localedata
    functionUses: 0
    functionsReached:
    - babel.localedata.LocaleDataDict.__init__
    - babel.localedata.LocaleDataDict.copy
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: babel.messages.jslexer
    functionSourceFile: babel.messages.jslexer
    functionUses: 0
    functionsReached:
    - re.compile
    - <builtin>.sorted
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - jsx
    - dotted
    - template_string
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 66
    functionName: babel.messages.jslexer.get_rules
    functionSourceFile: babel.messages.jslexer
    functionUses: 4
    functionsReached:
    - rules.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rules.append
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - token
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 90
    functionName: babel.messages.jslexer.indicates_division
    functionSourceFile: babel.messages.jslexer
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 10
    IfCount: 8
    argCount: 1
    argDefaultValues: []
    argNames:
    - string
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 99
    functionName: babel.messages.jslexer.unquote_string
    functionSourceFile: babel.messages.jslexer
    functionUses: 2
    functionsReached:
    - <builtin>.chr
    - escaped.end
    - escaped.group
    - typing.NamedTuple.value.find
    - <builtin>.len
    - line_join_re.sub
    - uni_escape_re.match
    - <builtin>.int
    - hex_escape_re.match
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line_join_re.sub
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.NamedTuple.value.find
    functionSourceFile: typing
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: uni_escape_re.match
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: escaped.group
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.chr
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: escaped.end
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: hex_escape_re.match
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.NamedTuple.__init__
    functionSourceFile: ''
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line_re.findall
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: babel.messages
    functionSourceFile: babel.messages
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: babel.messages.catalog
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached:
    - re.compile
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e5dd040>
    - <ast.Constant object at 0x7f1b4e5dd580>
    argNames:
    - word
    - possibilities
    - n
    - cutoff
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 43
    functionName: babel.messages.catalog.get_close_matches
    functionSourceFile: babel.messages.catalog
    functionUses: 2
    functionsReached:
    - difflib.SequenceMatcher.real_quick_ratio
    - difflib.SequenceMatcher
    - difflib.SequenceMatcher.set_seq1
    - heapq.nlargest.append
    - difflib.SequenceMatcher.ratio
    - difflib.SequenceMatcher.set_seq2
    - difflib.SequenceMatcher.quick_ratio
    - heapq.nlargest
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: difflib.SequenceMatcher
    functionSourceFile: difflib
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: difflib.SequenceMatcher.set_seq2
    functionSourceFile: difflib
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: difflib.SequenceMatcher.set_seq1
    functionSourceFile: difflib
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: difflib.SequenceMatcher.real_quick_ratio
    functionSourceFile: difflib
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: difflib.SequenceMatcher.quick_ratio
    functionSourceFile: difflib
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: difflib.SequenceMatcher.ratio
    functionSourceFile: difflib
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: heapq.nlargest.append
    functionSourceFile: heapq
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: heapq.nlargest
    functionSourceFile: heapq
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - string
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 86
    functionName: babel.messages.catalog._has_python_brace_format
    functionSourceFile: babel.messages.catalog
    functionUses: 1
    functionsReached:
    - string.Formatter
    - string.Formatter.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: string.Formatter
    functionSourceFile: string
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: string.Formatter.parse
    functionSourceFile: string
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 105
    functionName: babel.messages.catalog._parse_datetime_header
    functionSourceFile: babel.messages.catalog
    functionUses: 1
    functionsReached:
    - re.match
    - dt.replace
    - datetime.timezone
    - datetime.timedelta
    - match.group
    - <builtin>.int
    - datetime.datetime.strptime
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: re.match
    functionSourceFile: re
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.datetime.strptime
    functionSourceFile: datetime
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timedelta
    functionSourceFile: datetime
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.timezone
    functionSourceFile: datetime
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dt.replace
    functionSourceFile: <builtin>
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 5
    IfCount: 5
    argCount: 10
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e8170a0>
    - <ast.Tuple object at 0x7f1b4e817760>
    - <ast.Tuple object at 0x7f1b4e817100>
    - <ast.Tuple object at 0x7f1b4e817280>
    - <ast.Tuple object at 0x7f1b4e817df0>
    - <ast.Tuple object at 0x7f1b4e817c10>
    - <ast.Constant object at 0x7f1b4e817610>
    - <ast.Constant object at 0x7f1b4e817700>
    argNames:
    - self
    - id
    - string
    - locations
    - flags
    - auto_comments
    - user_comments
    - previous_id
    - lineno
    - context
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 141
    functionName: babel.messages.catalog.Message.__init__
    functionSourceFile: babel.messages.catalog
    functionUses: 18
    functionsReached:
    - <builtin>.set
    - dict.fromkeys
    - <builtin>.list
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dict.fromkeys
    functionSourceFile: <builtin>
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 195
    functionName: babel.messages.catalog.Message.__repr__
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - <builtin>.type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 198
    functionName: babel.messages.catalog.Message.__cmp__
    functionSourceFile: babel.messages.catalog
    functionUses: 6
    functionsReached:
    - babel.util._cmp
    - <builtin>.isinstance
    - babel.messages.catalog.Message.__cmp__.values_to_compare
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - obj
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 201
    functionName: babel.messages.catalog.Message.__cmp__.values_to_compare
    functionSourceFile: babel.messages.catalog
    functionUses: 7
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - a
    - b
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 317
    functionName: babel.util._cmp
    functionSourceFile: ''
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 208
    functionName: babel.messages.catalog.Message.__gt__
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached:
    - babel.util._cmp
    - babel.messages.catalog.Message.__cmp__
    - <builtin>.isinstance
    - babel.messages.catalog.Message.__cmp__.values_to_compare
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 211
    functionName: babel.messages.catalog.Message.__lt__
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached:
    - babel.util._cmp
    - babel.messages.catalog.Message.__cmp__
    - <builtin>.isinstance
    - babel.messages.catalog.Message.__cmp__.values_to_compare
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 214
    functionName: babel.messages.catalog.Message.__ge__
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached:
    - babel.util._cmp
    - babel.messages.catalog.Message.__cmp__
    - <builtin>.isinstance
    - babel.messages.catalog.Message.__cmp__.values_to_compare
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 217
    functionName: babel.messages.catalog.Message.__le__
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached:
    - babel.util._cmp
    - babel.messages.catalog.Message.__cmp__
    - <builtin>.isinstance
    - babel.messages.catalog.Message.__cmp__.values_to_compare
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 220
    functionName: babel.messages.catalog.Message.__eq__
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached:
    - babel.util._cmp
    - babel.messages.catalog.Message.__cmp__
    - <builtin>.isinstance
    - babel.messages.catalog.Message.__cmp__.values_to_compare
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 223
    functionName: babel.messages.catalog.Message.__ne__
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached:
    - babel.util._cmp
    - babel.messages.catalog.Message.__cmp__
    - <builtin>.isinstance
    - babel.messages.catalog.Message.__cmp__.values_to_compare
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 226
    functionName: babel.messages.catalog.Message.is_identical
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 233
    functionName: babel.messages.catalog.Message.clone
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached:
    - <builtin>.set
    - <builtin>.list
    - babel.messages.catalog.Message.__init__
    - dict.fromkeys
    - <builtin>.isinstance
    - copy.copy
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: copy.copy
    functionSourceFile: copy
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4ee53b50>
    argNames:
    - self
    - catalog
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 246
    functionName: babel.messages.catalog.Message.check
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached:
    - errors.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: errors.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 267
    functionName: babel.messages.catalog.Message.fuzzy
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 282
    functionName: babel.messages.catalog.Message.pluralizable
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 294
    functionName: babel.messages.catalog.Message.python_format
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached:
    - <builtin>.bool
    - PYTHON_FORMAT.search
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: PYTHON_FORMAT.search
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 312
    functionName: babel.messages.catalog.Message.python_brace_format
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached:
    - string.Formatter
    - string.Formatter.parse
    - babel.messages.catalog._has_python_brace_format
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 343
    functionName: babel.messages.catalog.parse_separated_header
    functionSourceFile: babel.messages.catalog
    functionUses: 1
    functionsReached:
    - email.message.Message
    - <builtin>.dict
    - email.message.Message.get_params
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: email.message.Message
    functionSourceFile: email
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: email.message.Message.get_params
    functionSourceFile: email
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.dict
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e6034c0>
    - <ast.Constant object at 0x7f1b4e603d90>
    argNames:
    - s
    - encoding
    - errors
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 352
    functionName: babel.messages.catalog._force_text
    functionSourceFile: babel.messages.catalog
    functionUses: 1
    functionsReached:
    - <builtin>.str
    - <builtin>.isinstance
    - s.decode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: s.decode
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 14
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e773520>
    - <ast.Constant object at 0x7f1b4e773760>
    - <ast.Name object at 0x7f1b4e773250>
    - <ast.Constant object at 0x7f1b4e773a60>
    - <ast.Constant object at 0x7f1b4e773640>
    - <ast.Constant object at 0x7f1b4e773190>
    - <ast.Constant object at 0x7f1b4e773940>
    - <ast.Constant object at 0x7f1b4e7737f0>
    - <ast.Constant object at 0x7f1b4e773910>
    - <ast.Constant object at 0x7f1b4e773280>
    - <ast.Constant object at 0x7f1b4e773100>
    - <ast.Constant object at 0x7f1b4e7733a0>
    - <ast.Constant object at 0x7f1b4e773970>
    argNames:
    - self
    - locale
    - domain
    - header_comment
    - project
    - version
    - copyright_holder
    - msgid_bugs_address
    - creation_date
    - revision_date
    - last_translator
    - language_team
    - charset
    - fuzzy
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 363
    functionName: babel.messages.catalog.Catalog.__init__
    functionSourceFile: babel.messages.catalog
    functionUses: 8
    functionsReached:
    - datetime.datetime.now
    - creation_date.replace
    - revision_date.replace
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.datetime.now
    functionSourceFile: datetime
    functionUses: 32
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: creation_date.replace
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: revision_date.replace
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - locale
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 433
    functionName: babel.messages.catalog.Catalog._set_locale
    functionSourceFile: babel.messages.catalog
    functionUses: 1
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 456
    functionName: babel.messages.catalog.Catalog._get_locale
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 459
    functionName: babel.messages.catalog.Catalog._get_locale_identifier
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: babel.messages.catalog.Catalog
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached:
    - <builtin>.property
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 465
    functionName: babel.messages.catalog.Catalog._get_header_comment
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached:
    - comment.replace
    - <builtin>.hasattr
    - datetime.datetime.now
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: comment.replace
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - string
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 481
    functionName: babel.messages.catalog.Catalog._set_header_comment
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 521
    functionName: babel.messages.catalog.Catalog._get_mime_headers
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached:
    - pickle.load
    - lang.isalpha
    - value.replace
    - <builtin>.filter
    - babel.dates._get_datetime
    - babel.core.Locale.parse._try_load_reducing
    - result.append
    - babel.dates.format_date
    - babel.dates.tokenize_pattern.append_chars
    - babel.dates.DateTimePattern.__init__
    - tzinfo.normalize
    - babel.core.Locale.__init__
    - os.path.isfile
    - pytz.timezone
    - babel.dates._cached_parse_pattern
    - babel.localedata.normalize_locale
    - babel.core._raise_no_data_error
    - dt.astimezone
    - name.strip
    - identifier.split
    - babel.dates.format_time
    - _windows_reserved_name_re.match
    - <builtin>.open
    - os.path.exists
    - babel.dates.tokenize_pattern.append_field
    - babel.core.get_global
    - os.path.basename
    - _global_data.get
    - datetime.datetime.combine
    - babel.dates.get_timezone
    - os.path.join
    - <builtin>.str
    - date.date
    - <builtin>.hasattr
    - time.timetz
    - tok_value.replace
    - <builtin>.isinstance
    - charbuf.extend
    - charbuf.append
    - babel.core.parse_locale
    - time.astimezone
    - <builtin>.len
    - <builtin>.tuple
    - babel.dates.format_datetime
    - datetime.datetime.now
    - time.date
    - babel.dates._get_time
    - babel.dates._ensure_datetime_tzinfo
    - headers.append
    - time.replace
    - os.path.splitext
    - dt.replace
    - babel.dates.get_datetime_format
    - babel.core.get_locale_identifier
    - pattern.replace
    - zoneinfo.ZoneInfo
    - babel.core.Locale.parse._try_load
    - babel.dates.tokenize_pattern
    - parts.pop
    - babel.core.Locale.parse
    - babel.localedata.exists
    - sep.join
    - babel.dates.DateTimePattern.apply
    - quotebuf.append
    - locale_id.lower
    - datetime.time
    - itertools.chain.from_iterable
    - babel.dates.get_date_format
    - os.path.dirname
    - babel.dates.DateTimeFormat.__init__
    - <builtin>.bool
    - babel.dates.parse_pattern
    - babel.dates.get_time_format
    - language_team.replace
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - datetime.datetime.fromtimestamp
    - datetime.date.today
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e843ac0>
    - <ast.Constant object at 0x7f1b4e843e50>
    - <ast.Constant object at 0x7f1b4e8430a0>
    - <ast.Constant object at 0x7f1b4e8432b0>
    argNames:
    - datetime
    - format
    - tzinfo
    - locale
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 727
    functionName: babel.dates.format_datetime
    functionSourceFile: babel.dates
    functionUses: 7
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - babel.dates.tokenize_pattern.append_field
    - babel.dates._get_time
    - lang.isalpha
    - babel.dates.DateTimePattern.apply
    - quotebuf.append
    - babel.core.get_global
    - sep.join
    - value.replace
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - babel.dates._ensure_datetime_tzinfo
    - datetime.datetime.combine
    - <builtin>.filter
    - babel.dates._get_datetime
    - time.replace
    - babel.core.Locale.parse._try_load_reducing
    - babel.dates.get_timezone
    - os.path.splitext
    - os.path.join
    - datetime.time
    - result.append
    - <builtin>.str
    - itertools.chain.from_iterable
    - dt.replace
    - date.date
    - babel.dates.get_date_format
    - babel.dates.get_datetime_format
    - babel.core.get_locale_identifier
    - <builtin>.hasattr
    - babel.dates.format_date
    - time.timetz
    - tok_value.replace
    - babel.dates.tokenize_pattern.append_chars
    - os.path.dirname
    - babel.dates.DateTimeFormat.__init__
    - <builtin>.isinstance
    - pattern.replace
    - <builtin>.bool
    - zoneinfo.ZoneInfo
    - babel.dates.DateTimePattern.__init__
    - tzinfo.normalize
    - charbuf.extend
    - charbuf.append
    - babel.core.parse_locale
    - babel.dates.parse_pattern
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - time.astimezone
    - <builtin>.len
    - pytz.timezone
    - babel.dates.get_time_format
    - time.date
    - babel.dates._cached_parse_pattern
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.dates.tokenize_pattern
    - babel.localedata.normalize_locale
    - dt.astimezone
    - name.strip
    - parts.pop
    - identifier.split
    - babel.dates.format_time
    - datetime.date.today
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - datetime.datetime.fromtimestamp
    - babel.core.Locale.parse
    - datetime.datetime.now
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: language_team.replace
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: headers.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 16
    ICount: 1
    IfCount: 11
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - headers
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 555
    functionName: babel.messages.catalog.Catalog._set_mime_headers
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - datetime.timezone
    - os.path.basename
    - value.replace
    - datetime.timedelta
    - locale_id.lower
    - babel.messages.catalog.parse_separated_header
    - _global_data.get
    - name.lower
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - dt.replace
    - value.split
    - babel.core.get_locale_identifier
    - <builtin>.dict
    - match.group
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - email.message.Message
    - re.match
    - babel.core.parse_locale
    - params.get
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - <builtin>.int
    - babel.messages.catalog.Catalog._set_locale
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - s.decode
    - babel.localedata.normalize_locale
    - email.message.Message.get_params
    - parts.pop
    - name.strip
    - identifier.split
    - babel.messages.catalog._force_text
    - babel.messages.catalog._parse_datetime_header
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - datetime.datetime.strptime
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: name.lower
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: value.split
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: value.replace
    functionSourceFile: <builtin>
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: params.get
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 648
    functionName: babel.messages.catalog.Catalog.num_plurals
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - babel.messages.plurals.get_plural
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e447a30>
    argNames:
    - locale
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 231
    functionName: babel.messages.plurals.get_plural
    functionSourceFile: babel.messages.plurals
    functionUses: 2
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 665
    functionName: babel.messages.catalog.Catalog.plural_expr
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - babel.messages.plurals.get_plural
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 684
    functionName: babel.messages.catalog.Catalog.plural_forms
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - id
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 695
    functionName: babel.messages.catalog.Catalog.__contains__
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached:
    - babel.messages.catalog.Catalog._key_for
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e579040>
    argNames:
    - self
    - id
    - context
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1029
    functionName: babel.messages.catalog.Catalog._key_for
    functionSourceFile: babel.messages.catalog
    functionUses: 20
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 699
    functionName: babel.messages.catalog.Catalog.__len__
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 705
    functionName: babel.messages.catalog.Catalog.__iter__
    functionSourceFile: babel.messages.catalog
    functionUses: 2
    functionsReached:
    - buf.append
    - <builtin>.set
    - <builtin>.list
    - babel.messages.catalog.Message.__init__
    - dict.fromkeys
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: buf.append
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 720
    functionName: babel.messages.catalog.Catalog.__repr__
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached:
    - <builtin>.type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - id
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 726
    functionName: babel.messages.catalog.Catalog.__delitem__
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached:
    - babel.messages.catalog.Catalog.delete
    - babel.messages.catalog.Catalog._key_for
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4ec0aa30>
    argNames:
    - self
    - id
    - context
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 856
    functionName: babel.messages.catalog.Catalog.delete
    functionSourceFile: babel.messages.catalog
    functionUses: 1
    functionsReached:
    - babel.messages.catalog.Catalog._key_for
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - id
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 730
    functionName: babel.messages.catalog.Catalog.__getitem__
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached:
    - babel.messages.catalog.Catalog.get
    - babel.messages.catalog.Catalog._key_for
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4ec0ad60>
    argNames:
    - self
    - id
    - context
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 848
    functionName: babel.messages.catalog.Catalog.get
    functionSourceFile: babel.messages.catalog
    functionUses: 3
    functionsReached:
    - babel.messages.catalog.Catalog._key_for
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - id
    - message
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 737
    functionName: babel.messages.catalog.Catalog.__setitem__
    functionSourceFile: babel.messages.catalog
    functionUses: 0
    functionsReached:
    - <builtin>.type
    - email.message_from_string.items
    - <builtin>.list
    - babel.messages.catalog.Catalog._key_for
    - dict.fromkeys
    - email.message_from_string
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: email.message_from_string
    functionSourceFile: email
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: email.message_from_string.items
    functionSourceFile: email
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 10
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e79e340>
    - <ast.Tuple object at 0x7f1b4e79ee20>
    - <ast.Tuple object at 0x7f1b4e79e3d0>
    - <ast.Tuple object at 0x7f1b4e79ec70>
    - <ast.Tuple object at 0x7f1b4e79e640>
    - <ast.Tuple object at 0x7f1b4e79eac0>
    - <ast.Constant object at 0x7f1b4e79e8e0>
    - <ast.Constant object at 0x7f1b4e79e130>
    argNames:
    - self
    - id
    - string
    - locations
    - flags
    - auto_comments
    - user_comments
    - previous_id
    - lineno
    - context
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 783
    functionName: babel.messages.catalog.Catalog.add
    functionSourceFile: babel.messages.catalog
    functionUses: 1
    functionsReached:
    - <builtin>.set
    - <builtin>.list
    - babel.messages.catalog.Message.__init__
    - dict.fromkeys
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 834
    functionName: babel.messages.catalog.Catalog.check
    functionSourceFile: babel.messages.catalog
    functionUses: 2
    functionsReached:
    - message.check
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: message.check
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 3
    IfCount: 10
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e6ce220>
    - <ast.Constant object at 0x7f1b4e6cee50>
    - <ast.Constant object at 0x7f1b4e6ce610>
    - <ast.Constant object at 0x7f1b4e6ce4c0>
    argNames:
    - self
    - template
    - no_fuzzy_matching
    - update_header_comment
    - keep_user_comments
    - update_creation_date
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 866
    functionName: babel.messages.catalog.Catalog.update
    functionSourceFile: babel.messages.catalog
    functionUses: 1
    functionsReached:
    - buf.append
    - difflib.SequenceMatcher
    - difflib.SequenceMatcher.set_seq1
    - fuzzy_candidates.keys
    - dict.fromkeys
    - difflib.SequenceMatcher.ratio
    - messages.get
    - babel.messages.catalog.get_close_matches
    - messages.copy
    - message.clone
    - <builtin>.isinstance
    - babel.messages.catalog.Catalog.__iter__
    - babel.messages.catalog.Catalog._key_for
    - babel.messages.catalog.Message.__init__
    - <builtin>.len
    - difflib.SequenceMatcher.set_seq2
    - difflib.SequenceMatcher.quick_ratio
    - difflib.SequenceMatcher.real_quick_ratio
    - fuzzy_matches.add
    - babel.messages.catalog.Catalog.update._merge
    - remaining.pop
    - <builtin>.set
    - <builtin>.list
    - matchkey.lower
    - heapq.nlargest.append
    - babel.messages.catalog.Catalog._to_fuzzy_match_key
    - <builtin>.tuple
    - heapq.nlargest
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: messages.copy
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1021
    functionName: babel.messages.catalog.Catalog._to_fuzzy_match_key
    functionSourceFile: babel.messages.catalog
    functionUses: 2
    functionsReached:
    - <builtin>.isinstance
    - matchkey.lower
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 1
    IfCount: 8
    argCount: 3
    argDefaultValues: []
    argNames:
    - message
    - oldkey
    - newkey
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 943
    functionName: babel.messages.catalog.Catalog.update._merge
    functionSourceFile: babel.messages.catalog
    functionUses: 2
    functionsReached:
    - remaining.pop
    - fuzzy_matches.add
    - <builtin>.list
    - message.clone
    - dict.fromkeys
    - <builtin>.len
    - <builtin>.isinstance
    - <builtin>.tuple
    - messages.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: message.clone
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fuzzy_matches.add
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: messages.get
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: remaining.pop
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fuzzy_candidates.keys
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: matchkey.lower
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1045
    functionName: babel.messages.catalog.Catalog.is_identical
    functionSourceFile: babel.messages.catalog
    functionUses: 1
    functionsReached:
    - babel.messages.catalog.Catalog.get
    - message_1.is_identical
    - babel.messages.catalog.Catalog._key_for
    - <builtin>.dict
    - <builtin>.isinstance
    - other._messages.keys
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: other._messages.keys
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: message_1.is_identical
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: babel.util
    functionSourceFile: babel.util
    functionUses: 0
    functionsReached:
    - typing.TypeVar
    - re.compile
    - <builtin>.object
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.object
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.TypeVar
    functionSourceFile: typing
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - iterable
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 29
    functionName: babel.util.distinct
    functionSourceFile: babel.util
    functionUses: 0
    functionsReached:
    - <builtin>.set
    - seen.add
    - <builtin>.iter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: seen.add
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 4
    IfCount: 6
    argCount: 1
    argDefaultValues: []
    argNames:
    - fp
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 56
    functionName: babel.util.parse_encoding
    functionSourceFile: babel.util
    functionUses: 1
    functionsReached:
    - line1.decode
    - PYTHON_MAGIC_COMMENT_re.match
    - m.group
    - fp.readline
    - <builtin>.len
    - fp.seek
    - line1.startswith
    - ast.parse
    - fp.tell
    linkageType: pythonLinkage
    raised:
    - SyntaxError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fp.tell
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fp.seek
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fp.readline
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line1.startswith
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: PYTHON_MAGIC_COMMENT_re.match
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line1.decode
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ast.parse
    functionSourceFile: ast
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: m.group
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e711e50>
    argNames:
    - fp
    - encoding
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 108
    functionName: babel.util.parse_future_flags
    functionSourceFile: babel.util
    functionUses: 1
    functionsReached:
    - fp.read
    - m.group
    - <builtin>.getattr
    - x.strip
    - fp.seek
    - PYTHON_FUTURE_IMPORT_re.finditer
    - re.sub
    - fp.tell
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fp.read
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: re.sub
    functionSourceFile: re
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: PYTHON_FUTURE_IMPORT_re.finditer
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: x.strip
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - pattern
    - filename
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 141
    functionName: babel.util.pathmatch
    functionSourceFile: babel.util
    functionUses: 4
    functionsReached:
    - buf.append
    - re.match
    - re.split
    - re.escape
    - os.path.relpath.replace
    - pattern.startswith
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pattern.startswith
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: re.split
    functionSourceFile: re
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.enumerate
    functionSourceFile: <builtin>
    functionUses: 24
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: re.escape
    functionSourceFile: re
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.relpath.replace
    functionSourceFile: os
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: babel.util.TextWrapper
    functionSourceFile: babel.util
    functionUses: 0
    functionsReached:
    - re.compile
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - text
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 215
    functionName: babel.util.TextWrapper._split
    functionSourceFile: babel.util
    functionUses: 0
    functionsReached:
    - chunk.startswith
    - re.split
    - chunks.extend
    - chunks.append
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.super
    functionSourceFile: <builtin>
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: chunk.startswith
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: chunks.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: chunks.extend
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e4650a0>
    - <ast.Constant object at 0x7f1b4e465df0>
    - <ast.Constant object at 0x7f1b4e465f70>
    argNames:
    - text
    - width
    - initial_indent
    - subsequent_indent
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 233
    functionName: babel.util.wraptext
    functionSourceFile: babel.util
    functionUses: 0
    functionsReached:
    - textwrap.TextWrapper.__init__
    - textwrap.TextWrapper.wrap
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: warnings.warn
    functionSourceFile: warnings
    functionUses: 30
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: textwrap.TextWrapper.__init__
    functionSourceFile: ''
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: textwrap.TextWrapper.wrap
    functionSourceFile: textwrap
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e581190>
    argNames:
    - self
    - offset
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 277
    functionName: babel.util.FixedOffsetTimezone.__init__
    functionSourceFile: babel.util
    functionUses: 0
    functionsReached:
    - datetime.timedelta
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 289
    functionName: babel.util.FixedOffsetTimezone.__str__
    functionSourceFile: babel.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 292
    functionName: babel.util.FixedOffsetTimezone.__repr__
    functionSourceFile: babel.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - dt
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 295
    functionName: babel.util.FixedOffsetTimezone.utcoffset
    functionSourceFile: babel.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - dt
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 298
    functionName: babel.util.FixedOffsetTimezone.tzname
    functionSourceFile: babel.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - dt
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 301
    functionName: babel.util.FixedOffsetTimezone.dst
    functionSourceFile: babel.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: -1
    functionName: babel.localtime
    functionSourceFile: babel.localtime
    functionUses: 0
    functionsReached:
    - etctz.split
    - <builtin>.open
    - os.path.exists
    - babel.localtime._helpers._get_tzinfo_from_file
    - babel.localtime._helpers._get_tzinfo
    - babel.localtime._win32.get_localzone_name
    - babel.localtime._helpers._get_tzinfo_or_raise
    - handle.Close
    - winreg.OpenKey
    - babel.localtime.get_localzone
    - babel.localtime._unix._tz_from_env
    - os.path.join
    - tzfile.read
    - babel.localtime._win32._get_localzone
    - os.readlink
    - <builtin>.str
    - data.strip
    - match.group
    - link_dst.find
    - winreg.QueryInfoKey
    - sub.Close
    - zoneinfo.ZoneInfo
    - babel.localtime._win32.valuestodict
    - babel.localtime._unix._get_localzone
    - zoneinfo.ZoneInfo.from_file
    - winreg.ConnectRegistry
    - winreg.EnumKey
    - re.compile
    - pytz.tzfile.build_tzinfo
    - pytz.timezone
    - tzkey.Close
    - datetime.tzinfo.__init__
    - tz_names.get
    - winreg.EnumValue
    - <builtin>.range
    - data.get
    - etctz.replace
    - timezone_re.match
    - os.environ.get
    - localtz.Close
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 32
    functionName: babel.localtime.get_localzone
    functionSourceFile: babel.localtime
    functionUses: 1
    functionsReached:
    - etctz.split
    - <builtin>.open
    - os.path.exists
    - babel.localtime._helpers._get_tzinfo_from_file
    - babel.localtime._helpers._get_tzinfo
    - babel.localtime._win32.get_localzone_name
    - babel.localtime._helpers._get_tzinfo_or_raise
    - handle.Close
    - winreg.OpenKey
    - babel.localtime._unix._tz_from_env
    - os.path.join
    - tzfile.read
    - babel.localtime._win32._get_localzone
    - os.readlink
    - <builtin>.str
    - data.strip
    - match.group
    - link_dst.find
    - winreg.QueryInfoKey
    - sub.Close
    - zoneinfo.ZoneInfo
    - babel.localtime._win32.valuestodict
    - babel.localtime._unix._get_localzone
    - zoneinfo.ZoneInfo.from_file
    - winreg.ConnectRegistry
    - winreg.EnumKey
    - re.compile
    - pytz.tzfile.build_tzinfo
    - pytz.timezone
    - tzkey.Close
    - tz_names.get
    - winreg.EnumValue
    - <builtin>.range
    - data.get
    - etctz.replace
    - timezone_re.match
    - os.environ.get
    - localtz.Close
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 93
    functionName: babel.localtime._win32._get_localzone
    functionSourceFile: babel.localtime._win32
    functionUses: 2
    functionsReached:
    - babel.localtime._helpers._get_tzinfo
    - babel.localtime._win32.get_localzone_name
    - babel.localtime._helpers._get_tzinfo_or_raise
    - handle.Close
    - winreg.OpenKey
    - <builtin>.str
    - winreg.QueryInfoKey
    - zoneinfo.ZoneInfo
    - sub.Close
    - babel.localtime._win32.valuestodict
    - winreg.ConnectRegistry
    - winreg.EnumKey
    - pytz.timezone
    - tzkey.Close
    - tz_names.get
    - winreg.EnumValue
    - <builtin>.range
    - data.get
    - localtz.Close
    linkageType: pythonLinkage
    raised:
    - LookupError
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 1
    IfCount: 10
    argCount: 1
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e79bf70>
    argNames:
    - _root
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 24
    functionName: babel.localtime._unix._get_localzone
    functionSourceFile: babel.localtime._unix
    functionUses: 2
    functionsReached:
    - etctz.split
    - <builtin>.open
    - os.path.exists
    - babel.localtime._helpers._get_tzinfo_from_file
    - babel.localtime._helpers._get_tzinfo
    - babel.localtime._helpers._get_tzinfo_or_raise
    - babel.localtime._unix._tz_from_env
    - os.path.join
    - tzfile.read
    - os.readlink
    - <builtin>.str
    - data.strip
    - match.group
    - link_dst.find
    - zoneinfo.ZoneInfo
    - zoneinfo.ZoneInfo.from_file
    - re.compile
    - pytz.tzfile.build_tzinfo
    - pytz.timezone
    - etctz.replace
    - timezone_re.match
    - os.environ.get
    linkageType: pythonLinkage
    raised:
    - LookupError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.tzinfo.__init__
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: babel.localtime._unix
    functionSourceFile: babel.localtime._unix
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - tzenv
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 12
    functionName: babel.localtime._unix._tz_from_env
    functionSourceFile: babel.localtime._unix
    functionUses: 3
    functionsReached:
    - <builtin>.open
    - <builtin>.str
    - os.path.exists
    - babel.localtime._helpers._get_tzinfo_from_file
    - zoneinfo.ZoneInfo.from_file
    - babel.localtime._helpers._get_tzinfo
    - babel.localtime._helpers._get_tzinfo_or_raise
    - pytz.timezone
    - pytz.tzfile.build_tzinfo
    - zoneinfo.ZoneInfo
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - tzfilename
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 52
    functionName: babel.localtime._helpers._get_tzinfo_from_file
    functionSourceFile: babel.localtime._helpers
    functionUses: 4
    functionsReached:
    - <builtin>.open
    - zoneinfo.ZoneInfo.from_file
    - pytz.tzfile.build_tzinfo
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - tzenv
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 42
    functionName: babel.localtime._helpers._get_tzinfo_or_raise
    functionSourceFile: babel.localtime._helpers
    functionUses: 5
    functionsReached:
    - babel.localtime._helpers._get_tzinfo
    - <builtin>.str
    - zoneinfo.ZoneInfo
    - pytz.timezone
    linkageType: pythonLinkage
    raised:
    - LookupError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.environ.get
    functionSourceFile: os
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.readlink
    functionSourceFile: os
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: link_dst.find
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - tzenv
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 12
    functionName: babel.localtime._helpers._get_tzinfo
    functionSourceFile: babel.localtime._helpers
    functionUses: 6
    functionsReached:
    - <builtin>.str
    - zoneinfo.ZoneInfo
    - pytz.timezone
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tzfile.read
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: data.strip
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: etctz.split
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: etctz.replace
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: timezone_re.match
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: babel.localtime._helpers
    functionSourceFile: babel.localtime._helpers
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pytz.timezone
    functionSourceFile: pytz
    functionUses: 24
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zoneinfo.ZoneInfo
    functionSourceFile: zoneinfo
    functionUses: 24
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pytz.tzfile.build_tzinfo
    functionSourceFile: pytz
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zoneinfo.ZoneInfo.from_file
    functionSourceFile: zoneinfo
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: babel.localtime._fallback
    functionSourceFile: babel.localtime._fallback
    functionUses: 0
    functionsReached:
    - datetime.timedelta
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - dt
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 22
    functionName: babel.localtime._fallback._FallbackLocalTimezone.utcoffset
    functionSourceFile: babel.localtime._fallback
    functionUses: 0
    functionsReached:
    - time.localtime
    - dt.weekday
    - time.mktime
    - babel.localtime._fallback._FallbackLocalTimezone._isdst
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - dt
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 37
    functionName: babel.localtime._fallback._FallbackLocalTimezone._isdst
    functionSourceFile: babel.localtime._fallback
    functionUses: 3
    functionsReached:
    - time.localtime
    - dt.weekday
    - time.mktime
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - dt
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 28
    functionName: babel.localtime._fallback._FallbackLocalTimezone.dst
    functionSourceFile: babel.localtime._fallback
    functionUses: 0
    functionsReached:
    - time.localtime
    - dt.weekday
    - time.mktime
    - babel.localtime._fallback._FallbackLocalTimezone._isdst
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - dt
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 34
    functionName: babel.localtime._fallback._FallbackLocalTimezone.tzname
    functionSourceFile: babel.localtime._fallback
    functionUses: 0
    functionsReached:
    - time.localtime
    - dt.weekday
    - time.mktime
    - babel.localtime._fallback._FallbackLocalTimezone._isdst
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dt.weekday
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: time.mktime
    functionSourceFile: time
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: time.localtime
    functionSourceFile: time
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: babel.localtime._win32
    functionSourceFile: babel.localtime._win32
    functionUses: 0
    functionsReached:
    - pickle.load
    - <builtin>.open
    - os.path.join
    - babel.core._raise_no_data_error
    - babel.core.get_global
    - os.path.isfile
    - _global_data.get
    - os.path.dirname
    - typing.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - key
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 24
    functionName: babel.localtime._win32.valuestodict
    functionSourceFile: babel.localtime._win32
    functionUses: 4
    functionsReached:
    - winreg.QueryInfoKey
    - <builtin>.range
    - winreg.EnumValue
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: winreg.QueryInfoKey
    functionSourceFile: winreg
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.range
    functionSourceFile: <builtin>
    functionUses: 22
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: winreg.EnumValue
    functionSourceFile: winreg
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 4
    IfCount: 5
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 34
    functionName: babel.localtime._win32.get_localzone_name
    functionSourceFile: babel.localtime._win32
    functionUses: 3
    functionsReached:
    - tzkey.Close
    - handle.Close
    - tz_names.get
    - winreg.ConnectRegistry
    - winreg.EnumKey
    - sub.Close
    - winreg.EnumValue
    - <builtin>.range
    - data.get
    - winreg.QueryInfoKey
    - winreg.OpenKey
    - localtz.Close
    - babel.localtime._win32.valuestodict
    linkageType: pythonLinkage
    raised:
    - LookupError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: winreg.ConnectRegistry
    functionSourceFile: winreg
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: winreg.OpenKey
    functionSourceFile: winreg
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: localtz.Close
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: winreg.EnumKey
    functionSourceFile: winreg
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sub.Close
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: data.get
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tzkey.Close
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: handle.Close
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tz_names.get
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: -1
    functionName: babel.dates
    functionSourceFile: babel.dates
    functionUses: 0
    functionsReached:
    - identifier.partition
    - babel.core.parse_locale
    - lang.isalpha
    - sep.join
    - babel.core.get_locale_identifier
    - <builtin>.tuple
    - parts.pop
    - identifier.split
    - <builtin>.len
    - os.getenv
    - functools.lru_cache
    - <builtin>.isinstance
    - locale.split
    - <builtin>.filter
    - babel.core.default_locale
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - tz
    - dt
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 62
    functionName: babel.dates._localize
    functionSourceFile: babel.dates
    functionUses: 0
    functionsReached:
    - dt.astimezone
    - <builtin>.hasattr
    - tz.localize
    - dt.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tz.localize
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dt.astimezone
    functionSourceFile: <builtin>
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - dt_or_tzinfo
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 79
    functionName: babel.dates._get_dt_and_tzinfo
    functionSourceFile: babel.dates
    functionUses: 5
    functionsReached:
    - datetime.time
    - datetime.datetime.fromtimestamp
    - datetime.datetime.now
    - <builtin>.isinstance
    - pytz.timezone
    - datetime.datetime.combine
    - zoneinfo.ZoneInfo
    - babel.dates._get_datetime
    - datetime.date.today
    - babel.dates.get_timezone
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4ee3e670>
    argNames:
    - zone
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 229
    functionName: babel.dates.get_timezone
    functionSourceFile: babel.dates
    functionUses: 16
    functionsReached:
    - zoneinfo.ZoneInfo
    - pytz.timezone
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - LookupError
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - instant
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 122
    functionName: babel.dates._get_datetime
    functionSourceFile: babel.dates
    functionUses: 15
    functionsReached:
    - datetime.time
    - datetime.datetime.fromtimestamp
    - datetime.date.today
    - <builtin>.isinstance
    - datetime.datetime.combine
    - datetime.datetime.now
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - dt_or_tzinfo
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 107
    functionName: babel.dates._get_tz_name
    functionSourceFile: babel.dates
    functionUses: 4
    functionsReached:
    - datetime.time
    - babel.dates._get_dt_and_tzinfo
    - datetime.datetime.fromtimestamp
    - datetime.datetime.now
    - <builtin>.hasattr
    - <builtin>.isinstance
    - pytz.timezone
    - datetime.datetime.combine
    - zoneinfo.ZoneInfo
    - babel.dates._get_datetime
    - tzinfo.tzname
    - datetime.date.today
    - babel.dates.get_timezone
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tzinfo.tzname
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.datetime.fromtimestamp
    functionSourceFile: datetime
    functionUses: 22
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.date.today
    functionSourceFile: datetime
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.datetime.combine
    functionSourceFile: datetime
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.time
    functionSourceFile: datetime
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e7bb610>
    argNames:
    - dt
    - tzinfo
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 165
    functionName: babel.dates._ensure_datetime_tzinfo
    functionSourceFile: babel.dates
    functionUses: 12
    functionsReached:
    - dt.replace
    - dt.astimezone
    - tzinfo.normalize
    - <builtin>.hasattr
    - pytz.timezone
    - <builtin>.isinstance
    - zoneinfo.ZoneInfo
    - babel.dates.get_timezone
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tzinfo.normalize
    functionSourceFile: <builtin>
    functionUses: 19
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 1
    IfCount: 7
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e779070>
    argNames:
    - time
    - tzinfo
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 198
    functionName: babel.dates._get_time
    functionSourceFile: babel.dates
    functionUses: 14
    functionsReached:
    - <builtin>.hasattr
    - time.timetz
    - time.astimezone
    - <builtin>.isinstance
    - datetime.datetime.fromtimestamp
    - time.replace
    - datetime.datetime.now
    - tzinfo.normalize
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: time.replace
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: time.astimezone
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: time.timetz
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e2e2400>
    - <ast.Constant object at 0x7f1b4e2e2be0>
    - <ast.Constant object at 0x7f1b4e2e26a0>
    argNames:
    - width
    - context
    - locale
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 261
    functionName: babel.dates.get_period_names
    functionSourceFile: babel.dates
    functionUses: 2
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e2e2730>
    - <ast.Constant object at 0x7f1b4e2e27f0>
    - <ast.Constant object at 0x7f1b4e2e2d90>
    argNames:
    - width
    - context
    - locale
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 278
    functionName: babel.dates.get_day_names
    functionSourceFile: babel.dates
    functionUses: 2
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e169160>
    - <ast.Constant object at 0x7f1b4e169e80>
    - <ast.Constant object at 0x7f1b4e169b20>
    argNames:
    - width
    - context
    - locale
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 301
    functionName: babel.dates.get_month_names
    functionSourceFile: babel.dates
    functionUses: 2
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e169bb0>
    - <ast.Constant object at 0x7f1b4e169400>
    - <ast.Constant object at 0x7f1b4e169d00>
    argNames:
    - width
    - context
    - locale
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 322
    functionName: babel.dates.get_quarter_names
    functionSourceFile: babel.dates
    functionUses: 2
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e76c4f0>
    - <ast.Constant object at 0x7f1b4e76c310>
    argNames:
    - width
    - locale
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 343
    functionName: babel.dates.get_era_names
    functionSourceFile: babel.dates
    functionUses: 2
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e76cc10>
    - <ast.Constant object at 0x7f1b4e76cf10>
    argNames:
    - format
    - locale
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 360
    functionName: babel.dates.get_date_format
    functionSourceFile: babel.dates
    functionUses: 12
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e6edbb0>
    - <ast.Constant object at 0x7f1b4e6edc70>
    argNames:
    - format
    - locale
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 379
    functionName: babel.dates.get_datetime_format
    functionSourceFile: babel.dates
    functionUses: 8
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e70ab50>
    - <ast.Constant object at 0x7f1b4e70a7f0>
    argNames:
    - format
    - locale
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 399
    functionName: babel.dates.get_time_format
    functionSourceFile: babel.dates
    functionUses: 12
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e70a040>
    - <ast.Constant object at 0x7f1b4e70a550>
    - <ast.Constant object at 0x7f1b4e70aac0>
    - <ast.Constant object at 0x7f1b4e70a400>
    argNames:
    - datetime
    - width
    - locale
    - return_z
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 418
    functionName: babel.dates.get_timezone_gmt
    functionSourceFile: babel.dates
    functionUses: 3
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - datetime.datetime.now
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - babel.dates._ensure_datetime_tzinfo
    - datetime.datetime.combine
    - <builtin>.filter
    - babel.dates._get_datetime
    - babel.core.Locale.parse._try_load_reducing
    - babel.dates.get_timezone
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - datetime.time
    - itertools.chain.from_iterable
    - dt.replace
    - babel.core.get_locale_identifier
    - <builtin>.hasattr
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - zoneinfo.ZoneInfo
    - tzinfo.normalize
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - pytz.timezone
    - <builtin>.divmod
    - babel.localedata.resolve_locale_filename
    - datetime.tzinfo.utcoffset
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - dt.astimezone
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - datetime.datetime.fromtimestamp
    - babel.core.Locale.parse
    - datetime.date.today
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.tzinfo.utcoffset
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.divmod
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 1
    IfCount: 6
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e66dc70>
    - <ast.Constant object at 0x7f1b4e66d700>
    - <ast.Constant object at 0x7f1b4e66df70>
    argNames:
    - dt_or_tzinfo
    - locale
    - return_city
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 478
    functionName: babel.dates.get_timezone_location
    functionSourceFile: babel.dates
    functionUses: 3
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - datetime.datetime.combine
    - <builtin>.filter
    - babel.dates._get_datetime
    - babel.dates._get_tz_name
    - babel.core.Locale.parse._try_load_reducing
    - babel.dates.get_timezone
    - os.path.join
    - os.path.splitext
    - datetime.time
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.Locale.parse
    - babel.core.get_locale_identifier
    - <builtin>.hasattr
    - os.path.dirname
    - zone.replace
    - <builtin>.isinstance
    - <builtin>.bool
    - zoneinfo.ZoneInfo
    - babel.dates._get_dt_and_tzinfo
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - pytz.timezone
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - zone.split
    - datetime.date.today
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - datetime.datetime.fromtimestamp
    - tzinfo.tzname
    - datetime.datetime.now
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zone.split
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: zone.replace
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 16
    ICount: 1
    IfCount: 11
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e498c10>
    - <ast.Constant object at 0x7f1b4e498280>
    - <ast.Constant object at 0x7f1b4e4980d0>
    - <ast.Constant object at 0x7f1b4e498e20>
    - <ast.Constant object at 0x7f1b4e498760>
    - <ast.Constant object at 0x7f1b4e498d30>
    argNames:
    - dt_or_tzinfo
    - width
    - uncommon
    - locale
    - zone_variant
    - return_zone
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 565
    functionName: babel.dates.get_timezone_name
    functionSourceFile: babel.dates
    functionUses: 2
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - babel.dates.get_timezone_location
    - lang.isalpha
    - tzinfo.dst
    - babel.core.get_global
    - sep.join
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - babel.dates._ensure_datetime_tzinfo
    - datetime.datetime.combine
    - <builtin>.filter
    - babel.dates._get_datetime
    - babel.dates._get_tz_name
    - babel.core.Locale.parse._try_load_reducing
    - babel.dates.get_timezone
    - os.path.join
    - os.path.splitext
    - <builtin>.str
    - datetime.time
    - itertools.chain.from_iterable
    - dt.replace
    - babel.core.get_locale_identifier
    - <builtin>.hasattr
    - tzinfo.tzname
    - metazone_info.get
    - os.path.dirname
    - <builtin>.isinstance
    - zone.replace
    - <builtin>.bool
    - zoneinfo.ZoneInfo
    - tzinfo.normalize
    - babel.dates._get_dt_and_tzinfo
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - pytz.timezone
    - <builtin>.divmod
    - babel.localedata.resolve_locale_filename
    - datetime.tzinfo.utcoffset
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - dt.astimezone
    - name.strip
    - parts.pop
    - identifier.split
    - zone.split
    - datetime.date.today
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - datetime.datetime.fromtimestamp
    - babel.dates.get_timezone_gmt
    - babel.core.Locale.parse
    - datetime.datetime.now
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tzinfo.dst
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: metazone_info.get
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e1a85e0>
    - <ast.Constant object at 0x7f1b4e1a8d00>
    - <ast.Constant object at 0x7f1b4e1a81c0>
    argNames:
    - date
    - format
    - locale
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 689
    functionName: babel.dates.format_date
    functionSourceFile: babel.dates
    functionUses: 10
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - babel.dates.tokenize_pattern.append_field
    - lang.isalpha
    - babel.core.get_global
    - babel.dates.DateTimePattern.apply
    - quotebuf.append
    - sep.join
    - os.path.basename
    - value.replace
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - result.append
    - itertools.chain.from_iterable
    - date.date
    - babel.dates.get_date_format
    - babel.core.get_locale_identifier
    - tok_value.replace
    - babel.dates.tokenize_pattern.append_chars
    - os.path.dirname
    - babel.dates.DateTimeFormat.__init__
    - <builtin>.isinstance
    - pattern.replace
    - <builtin>.bool
    - babel.dates.DateTimePattern.__init__
    - charbuf.extend
    - charbuf.append
    - babel.core.parse_locale
    - babel.dates.parse_pattern
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.dates._cached_parse_pattern
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.dates.tokenize_pattern
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    - datetime.date.today
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: date.date
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - pattern
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1780
    functionName: babel.dates.parse_pattern
    functionSourceFile: babel.dates
    functionUses: 16
    functionsReached:
    - charbuf.extend
    - charbuf.append
    - result.append
    - babel.dates.tokenize_pattern
    - babel.dates.tokenize_pattern.append_field
    - quotebuf.append
    - tok_value.replace
    - babel.dates.tokenize_pattern.append_chars
    - <builtin>.isinstance
    - pattern.replace
    - babel.dates._cached_parse_pattern
    - babel.dates.DateTimePattern.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4ee539a0>
    argNames:
    - self
    - datetime
    - locale
    - reference_date
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1418
    functionName: babel.dates.DateTimePattern.apply
    functionSourceFile: babel.dates
    functionUses: 14
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - value.replace
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - babel.dates.DateTimeFormat.__init__
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4ebf39a0>
    - <ast.Constant object at 0x7f1b4ebf3670>
    - <ast.Constant object at 0x7f1b4ebf38b0>
    - <ast.Constant object at 0x7f1b4ebf3550>
    argNames:
    - time
    - format
    - tzinfo
    - locale
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 770
    functionName: babel.dates.format_time
    functionSourceFile: babel.dates
    functionUses: 10
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - babel.dates.tokenize_pattern.append_field
    - babel.dates._get_time
    - lang.isalpha
    - babel.dates.DateTimePattern.apply
    - quotebuf.append
    - babel.core.get_global
    - sep.join
    - value.replace
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - time.replace
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - result.append
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - <builtin>.hasattr
    - time.timetz
    - tok_value.replace
    - babel.dates.tokenize_pattern.append_chars
    - os.path.dirname
    - babel.dates.DateTimeFormat.__init__
    - <builtin>.isinstance
    - pattern.replace
    - <builtin>.bool
    - babel.dates.DateTimePattern.__init__
    - tzinfo.normalize
    - charbuf.extend
    - charbuf.append
    - babel.core.parse_locale
    - babel.dates.parse_pattern
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - time.astimezone
    - <builtin>.len
    - babel.dates.get_time_format
    - babel.dates._cached_parse_pattern
    - time.date
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.dates.tokenize_pattern
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - datetime.datetime.fromtimestamp
    - babel.core.Locale.parse
    - datetime.datetime.now
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: time.date
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e40b2b0>
    - <ast.Constant object at 0x7f1b4e40b430>
    - <ast.Constant object at 0x7f1b4e40b250>
    - <ast.Constant object at 0x7f1b4e40b730>
    argNames:
    - skeleton
    - datetime
    - tzinfo
    - fuzzy
    - locale
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 844
    functionName: babel.dates.format_skeleton
    functionSourceFile: babel.dates
    functionUses: 3
    functionsReached:
    - pickle.load
    - lang.isalpha
    - value.replace
    - <builtin>.filter
    - babel.dates._get_datetime
    - babel.core.Locale.parse._try_load_reducing
    - <builtin>.abs
    - result.append
    - babel.dates.format_date
    - babel.dates.tokenize_pattern.append_chars
    - babel.dates.DateTimePattern.__init__
    - tzinfo.normalize
    - babel.core.Locale.__init__
    - os.path.isfile
    - pytz.timezone
    - babel.dates._cached_parse_pattern
    - babel.localedata.normalize_locale
    - babel.core._raise_no_data_error
    - dt.astimezone
    - name.strip
    - identifier.split
    - babel.dates.format_time
    - _windows_reserved_name_re.match
    - <builtin>.open
    - os.path.exists
    - babel.dates.tokenize_pattern.append_field
    - babel.core.get_global
    - os.path.basename
    - babel.dates.match_skeleton
    - _global_data.get
    - datetime.datetime.combine
    - babel.dates.get_timezone
    - os.path.join
    - <builtin>.str
    - date.date
    - <builtin>.hasattr
    - time.timetz
    - tok_value.replace
    - <builtin>.isinstance
    - charbuf.extend
    - charbuf.append
    - babel.core.parse_locale
    - time.astimezone
    - <builtin>.len
    - babel.dates.format_datetime
    - <builtin>.tuple
    - time.date
    - datetime.datetime.now
    - babel.dates._get_time
    - babel.dates._ensure_datetime_tzinfo
    - time.replace
    - os.path.splitext
    - dt.replace
    - babel.dates.get_datetime_format
    - babel.core.get_locale_identifier
    - <builtin>.any
    - pattern.replace
    - zoneinfo.ZoneInfo
    - babel.core.Locale.parse._try_load
    - <builtin>.sorted
    - babel.dates.tokenize_pattern
    - parts.pop
    - babel.core.Locale.parse
    - babel.localedata.exists
    - sep.join
    - quotebuf.append
    - babel.dates.DateTimePattern.apply
    - locale_id.lower
    - datetime.time
    - itertools.chain.from_iterable
    - babel.dates.get_date_format
    - <builtin>.dict
    - os.path.dirname
    - babel.dates.DateTimeFormat.__init__
    - <builtin>.bool
    - babel.dates.parse_pattern
    - babel.dates.get_time_format
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - datetime.datetime.fromtimestamp
    - datetime.date.today
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 18
    ICount: 1
    IfCount: 12
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4d2c6ac0>
    argNames:
    - skeleton
    - options
    - allow_different_fields
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1952
    functionName: babel.dates.match_skeleton
    functionSourceFile: babel.dates
    functionUses: 4
    functionsReached:
    - <builtin>.abs
    - charbuf.extend
    - charbuf.append
    - result.append
    - babel.dates.tokenize_pattern
    - babel.dates.tokenize_pattern.append_field
    - quotebuf.append
    - babel.dates.tokenize_pattern.append_chars
    - <builtin>.dict
    - <builtin>.any
    - pattern.replace
    - <builtin>.sorted
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 2
    IfCount: 8
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e1506a0>
    - <ast.Constant object at 0x7f1b4e150be0>
    - <ast.Constant object at 0x7f1b4e150670>
    - <ast.Constant object at 0x7f1b4e150d00>
    - <ast.Constant object at 0x7f1b4e1507f0>
    argNames:
    - delta
    - granularity
    - threshold
    - add_direction
    - format
    - locale
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 905
    functionName: babel.dates.format_timedelta
    functionSourceFile: babel.dates
    functionUses: 1
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - unit_patterns.get
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - <builtin>.abs
    - patterns.get
    - <builtin>.str
    - os.path.join
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - <builtin>.round
    - os.path.dirname
    - <builtin>.isinstance
    - pattern.replace
    - <builtin>.bool
    - babel.core.Locale.plural_form
    - babel.core.parse_locale
    - warnings.warn
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - <builtin>.int
    - babel.localedata.resolve_locale_filename
    - <builtin>.max
    - date_fields.get
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - unit_pats.get
    - identifier.split
    - babel.dates.format_timedelta._iter_patterns
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - a_unit
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 993
    functionName: babel.dates.format_timedelta._iter_patterns
    functionSourceFile: babel.dates
    functionUses: 2
    functionsReached:
    - unit_patterns.get
    - date_fields.get
    - unit_pats.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: date_fields.get
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: unit_patterns.get
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: unit_pats.get
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.max
    functionSourceFile: <builtin>
    functionUses: 31
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.round
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: patterns.get
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pattern.replace
    functionSourceFile: <builtin>
    functionUses: 23
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 5
    argDefaultValues: []
    argNames:
    - start
    - end
    - skeleton
    - tzinfo
    - locale
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 1033
    functionName: babel.dates._format_fallback_interval
    functionSourceFile: babel.dates
    functionUses: 1
    functionsReached:
    - pickle.load
    - lang.isalpha
    - value.replace
    - <builtin>.filter
    - babel.dates._get_datetime
    - babel.core.Locale.parse._try_load_reducing
    - <builtin>.abs
    - result.append
    - babel.dates._format_fallback_interval.<lambda2>
    - babel.dates.format_date
    - babel.dates.tokenize_pattern.append_chars
    - babel.dates.DateTimePattern.__init__
    - tzinfo.normalize
    - babel.core.Locale.__init__
    - os.path.isfile
    - pytz.timezone
    - babel.dates._cached_parse_pattern
    - babel.localedata.normalize_locale
    - babel.core._raise_no_data_error
    - dt.astimezone
    - name.strip
    - <builtin>.all
    - identifier.split
    - babel.dates.format_time
    - _windows_reserved_name_re.match
    - <builtin>.open
    - os.path.exists
    - babel.dates.tokenize_pattern.append_field
    - babel.core.get_global
    - os.path.basename
    - babel.dates.match_skeleton
    - _global_data.get
    - datetime.datetime.combine
    - babel.dates.get_timezone
    - os.path.join
    - <builtin>.str
    - date.date
    - <builtin>.hasattr
    - time.timetz
    - tok_value.replace
    - <builtin>.isinstance
    - charbuf.extend
    - charbuf.append
    - babel.core.parse_locale
    - time.astimezone
    - <builtin>.len
    - babel.dates.format_datetime
    - <builtin>.tuple
    - time.date
    - datetime.datetime.now
    - babel.dates._get_time
    - babel.dates._format_fallback_interval.<lambda4>
    - babel.dates._ensure_datetime_tzinfo
    - time.replace
    - os.path.splitext
    - dt.replace
    - babel.dates.get_datetime_format
    - babel.core.get_locale_identifier
    - babel.dates._format_fallback_interval.<lambda1>
    - <builtin>.any
    - pattern.replace
    - zoneinfo.ZoneInfo
    - babel.core.Locale.parse._try_load
    - <builtin>.sorted
    - babel.dates.tokenize_pattern
    - parts.pop
    - babel.core.Locale.parse
    - babel.dates.format_skeleton
    - babel.localedata.exists
    - babel.dates._format_fallback_interval.<lambda3>
    - sep.join
    - babel.dates.DateTimePattern.apply
    - quotebuf.append
    - locale_id.lower
    - datetime.time
    - itertools.chain.from_iterable
    - babel.dates.get_date_format
    - <builtin>.dict
    - os.path.dirname
    - babel.dates.DateTimeFormat.__init__
    - <builtin>.bool
    - babel.dates.parse_pattern
    - babel.dates.get_time_format
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - datetime.datetime.fromtimestamp
    - datetime.date.today
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: -1
    functionName: babel.dates._format_fallback_interval.<lambda1>
    functionSourceFile: babel.dates
    functionUses: 2
    functionsReached:
    - pickle.load
    - lang.isalpha
    - value.replace
    - <builtin>.filter
    - babel.dates._get_datetime
    - babel.core.Locale.parse._try_load_reducing
    - <builtin>.abs
    - result.append
    - babel.dates.format_date
    - babel.dates.tokenize_pattern.append_chars
    - babel.dates.DateTimePattern.__init__
    - tzinfo.normalize
    - babel.core.Locale.__init__
    - os.path.isfile
    - pytz.timezone
    - babel.dates._cached_parse_pattern
    - babel.localedata.normalize_locale
    - babel.core._raise_no_data_error
    - dt.astimezone
    - name.strip
    - identifier.split
    - babel.dates.format_time
    - _windows_reserved_name_re.match
    - <builtin>.open
    - os.path.exists
    - babel.dates.tokenize_pattern.append_field
    - babel.core.get_global
    - os.path.basename
    - babel.dates.match_skeleton
    - _global_data.get
    - datetime.datetime.combine
    - babel.dates.get_timezone
    - os.path.join
    - <builtin>.str
    - date.date
    - <builtin>.hasattr
    - time.timetz
    - tok_value.replace
    - <builtin>.isinstance
    - charbuf.extend
    - charbuf.append
    - babel.core.parse_locale
    - time.astimezone
    - <builtin>.len
    - babel.dates.format_datetime
    - <builtin>.tuple
    - time.date
    - datetime.datetime.now
    - babel.dates._get_time
    - babel.dates._ensure_datetime_tzinfo
    - time.replace
    - os.path.splitext
    - dt.replace
    - babel.dates.get_datetime_format
    - babel.core.get_locale_identifier
    - <builtin>.any
    - pattern.replace
    - zoneinfo.ZoneInfo
    - babel.core.Locale.parse._try_load
    - <builtin>.sorted
    - babel.dates.tokenize_pattern
    - parts.pop
    - babel.core.Locale.parse
    - babel.dates.format_skeleton
    - babel.localedata.exists
    - sep.join
    - quotebuf.append
    - babel.dates.DateTimePattern.apply
    - locale_id.lower
    - datetime.time
    - itertools.chain.from_iterable
    - babel.dates.get_date_format
    - <builtin>.dict
    - os.path.dirname
    - babel.dates.DateTimeFormat.__init__
    - <builtin>.bool
    - babel.dates.parse_pattern
    - babel.dates.get_time_format
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - datetime.datetime.fromtimestamp
    - datetime.date.today
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.all
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: -1
    functionName: babel.dates._format_fallback_interval.<lambda2>
    functionSourceFile: babel.dates
    functionUses: 2
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - babel.dates.tokenize_pattern.append_field
    - lang.isalpha
    - babel.core.get_global
    - babel.dates.DateTimePattern.apply
    - quotebuf.append
    - sep.join
    - os.path.basename
    - value.replace
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - result.append
    - itertools.chain.from_iterable
    - babel.dates.get_date_format
    - date.date
    - babel.core.get_locale_identifier
    - babel.dates.format_date
    - tok_value.replace
    - babel.dates.tokenize_pattern.append_chars
    - os.path.dirname
    - babel.dates.DateTimeFormat.__init__
    - <builtin>.isinstance
    - pattern.replace
    - <builtin>.bool
    - babel.dates.DateTimePattern.__init__
    - charbuf.extend
    - charbuf.append
    - babel.core.parse_locale
    - babel.dates.parse_pattern
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.dates._cached_parse_pattern
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.dates.tokenize_pattern
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    - datetime.date.today
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: -1
    functionName: babel.dates._format_fallback_interval.<lambda3>
    functionSourceFile: babel.dates
    functionUses: 2
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - babel.dates.tokenize_pattern.append_field
    - babel.dates._get_time
    - lang.isalpha
    - babel.dates.DateTimePattern.apply
    - quotebuf.append
    - babel.core.get_global
    - sep.join
    - value.replace
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - time.replace
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - result.append
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - <builtin>.hasattr
    - time.timetz
    - tok_value.replace
    - babel.dates.tokenize_pattern.append_chars
    - os.path.dirname
    - babel.dates.DateTimeFormat.__init__
    - <builtin>.isinstance
    - pattern.replace
    - <builtin>.bool
    - babel.dates.DateTimePattern.__init__
    - tzinfo.normalize
    - charbuf.extend
    - charbuf.append
    - babel.core.parse_locale
    - babel.dates.parse_pattern
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - time.astimezone
    - <builtin>.len
    - babel.dates.get_time_format
    - babel.dates._cached_parse_pattern
    - time.date
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.dates.tokenize_pattern
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - babel.dates.format_time
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - datetime.datetime.fromtimestamp
    - babel.core.Locale.parse
    - datetime.datetime.now
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: -1
    functionName: babel.dates._format_fallback_interval.<lambda4>
    functionSourceFile: babel.dates
    functionUses: 2
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - babel.dates.tokenize_pattern.append_field
    - babel.dates._get_time
    - lang.isalpha
    - babel.dates.DateTimePattern.apply
    - quotebuf.append
    - babel.core.get_global
    - sep.join
    - value.replace
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - babel.dates._ensure_datetime_tzinfo
    - datetime.datetime.combine
    - <builtin>.filter
    - babel.dates._get_datetime
    - time.replace
    - babel.core.Locale.parse._try_load_reducing
    - babel.dates.get_timezone
    - os.path.splitext
    - os.path.join
    - datetime.time
    - result.append
    - <builtin>.str
    - itertools.chain.from_iterable
    - dt.replace
    - date.date
    - babel.dates.get_date_format
    - babel.dates.get_datetime_format
    - babel.core.get_locale_identifier
    - <builtin>.hasattr
    - babel.dates.format_date
    - time.timetz
    - tok_value.replace
    - babel.dates.tokenize_pattern.append_chars
    - os.path.dirname
    - babel.dates.DateTimeFormat.__init__
    - <builtin>.isinstance
    - pattern.replace
    - <builtin>.bool
    - zoneinfo.ZoneInfo
    - babel.dates.DateTimePattern.__init__
    - tzinfo.normalize
    - charbuf.extend
    - charbuf.append
    - babel.core.parse_locale
    - babel.dates.parse_pattern
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - time.astimezone
    - <builtin>.len
    - pytz.timezone
    - babel.dates.get_time_format
    - time.date
    - babel.dates._cached_parse_pattern
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.dates.tokenize_pattern
    - babel.localedata.normalize_locale
    - dt.astimezone
    - name.strip
    - parts.pop
    - <builtin>.tuple
    - identifier.split
    - babel.dates.format_time
    - datetime.date.today
    - _windows_reserved_name_re.match
    - babel.dates.format_datetime
    - datetime.datetime.fromtimestamp
    - babel.core.Locale.parse
    - datetime.datetime.now
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e57c070>
    - <ast.Constant object at 0x7f1b4e57cbe0>
    - <ast.Constant object at 0x7f1b4e57cd00>
    - <ast.Constant object at 0x7f1b4e57c700>
    argNames:
    - start
    - end
    - skeleton
    - tzinfo
    - fuzzy
    - locale
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1070
    functionName: babel.dates.format_interval
    functionSourceFile: babel.dates
    functionUses: 0
    functionsReached:
    - pickle.load
    - lang.isalpha
    - value.replace
    - <builtin>.filter
    - babel.dates._get_datetime
    - babel.core.Locale.parse._try_load_reducing
    - <builtin>.abs
    - result.append
    - babel.dates._format_fallback_interval.<lambda2>
    - babel.dates.format_date
    - babel.dates.tokenize_pattern.append_chars
    - babel.dates.DateTimePattern.__init__
    - tzinfo.normalize
    - babel.core.Locale.__init__
    - os.path.isfile
    - pytz.timezone
    - babel.dates._cached_parse_pattern
    - babel.localedata.normalize_locale
    - babel.core._raise_no_data_error
    - dt.astimezone
    - name.strip
    - <builtin>.all
    - identifier.split
    - babel.dates.format_time
    - _windows_reserved_name_re.match
    - <builtin>.open
    - os.path.exists
    - babel.dates.tokenize_pattern.append_field
    - babel.core.get_global
    - os.path.basename
    - babel.dates.match_skeleton
    - _global_data.get
    - datetime.datetime.combine
    - babel.dates.get_timezone
    - os.path.join
    - <builtin>.str
    - date.date
    - <builtin>.hasattr
    - time.timetz
    - tok_value.replace
    - <builtin>.isinstance
    - charbuf.extend
    - charbuf.append
    - babel.core.parse_locale
    - babel.dates.DateTimeFormat.extract
    - time.astimezone
    - <builtin>.len
    - <builtin>.int
    - babel.dates.format_datetime
    - <builtin>.tuple
    - time.date
    - datetime.datetime.now
    - babel.dates._get_time
    - babel.dates._format_fallback_interval.<lambda4>
    - babel.dates._ensure_datetime_tzinfo
    - time.replace
    - os.path.splitext
    - dt.replace
    - babel.dates.get_datetime_format
    - babel.core.get_locale_identifier
    - babel.dates._format_fallback_interval.<lambda1>
    - <builtin>.any
    - pattern.replace
    - zoneinfo.ZoneInfo
    - babel.core.Locale.parse._try_load
    - <builtin>.sorted
    - babel.dates.tokenize_pattern
    - parts.pop
    - babel.core.Locale.parse
    - babel.dates.format_skeleton
    - babel.localedata.exists
    - <builtin>.zip
    - babel.dates._format_fallback_interval.<lambda3>
    - sep.join
    - babel.dates.DateTimePattern.apply
    - quotebuf.append
    - locale_id.lower
    - datetime.time
    - itertools.chain.from_iterable
    - babel.dates._format_fallback_interval
    - babel.dates.get_date_format
    - <builtin>.dict
    - os.path.dirname
    - babel.dates.DateTimeFormat.__init__
    - <builtin>.bool
    - babel.dates.parse_pattern
    - babel.dates.get_time_format
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - datetime.datetime.fromtimestamp
    - datetime.date.today
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e4bad00>
    argNames:
    - self
    - value
    - locale
    - reference_date
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 1428
    functionName: babel.dates.DateTimeFormat.__init__
    functionSourceFile: babel.dates
    functionUses: 15
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - value.replace
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 0
    IfCount: 7
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - char
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1491
    functionName: babel.dates.DateTimeFormat.extract
    functionSourceFile: babel.dates
    functionUses: 1
    functionsReached:
    - <builtin>.str
    - <builtin>.int
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.zip
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 16
    ICount: 1
    IfCount: 11
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e5dd730>
    - <ast.Constant object at 0x7f1b4e5ddf40>
    - <ast.Constant object at 0x7f1b4e5dd7f0>
    argNames:
    - time
    - tzinfo
    - type
    - locale
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 1174
    functionName: babel.dates.get_period_id
    functionSourceFile: babel.dates
    functionUses: 2
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - babel.dates._get_time
    - babel.core.get_global
    - sep.join
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - time.replace
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - <builtin>.hasattr
    - time.timetz
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - tzinfo.normalize
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - time.astimezone
    - <builtin>.len
    - <builtin>.int
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - datetime.datetime.fromtimestamp
    - babel.core.Locale.parse
    - datetime.datetime.now
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e232670>
    - <ast.Constant object at 0x7f1b4e232400>
    argNames:
    - string
    - locale
    - format
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1256
    functionName: babel.dates.parse_date
    functionSourceFile: babel.dates
    functionUses: 0
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - datetime.date
    - os.path.exists
    - lang.isalpha
    - babel.dates.tokenize_pattern.append_field
    - babel.core.get_global
    - quotebuf.append
    - sep.join
    - os.path.basename
    - locale_id.lower
    - format_str.find
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - result.append
    - itertools.chain.from_iterable
    - babel.dates.get_date_format
    - babel.core.get_locale_identifier
    - iso_alike.groups
    - tok_value.replace
    - babel.dates.tokenize_pattern.append_chars
    - os.path.dirname
    - <builtin>.isinstance
    - pattern.replace
    - <builtin>.bool
    - babel.dates.DateTimePattern.__init__
    - <builtin>.enumerate
    - charbuf.extend
    - charbuf.append
    - re.findall
    - re.match
    - babel.core.parse_locale
    - babel.dates.parse_pattern
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - fmt.pattern.lower
    - <builtin>.int
    - <builtin>.sorted
    - babel.dates._cached_parse_pattern
    - format_str.index
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.localedata.normalize_locale
    - babel.core._raise_no_data_error
    - babel.dates.tokenize_pattern
    - name.strip
    - parts.pop
    - identifier.split
    - <builtin>.map
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised:
    - ParseError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: re.findall
    functionSourceFile: re
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: iso_alike.groups
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.map
    functionSourceFile: <builtin>
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: datetime.date
    functionSourceFile: datetime
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fmt.pattern.lower
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: format_str.index
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: format_str.find
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 1
    IfCount: 7
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e1db3d0>
    - <ast.Constant object at 0x7f1b4e1db640>
    argNames:
    - string
    - locale
    - format
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1336
    functionName: babel.dates.parse_time
    functionSourceFile: babel.dates
    functionUses: 0
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - babel.dates.tokenize_pattern.append_field
    - lang.isalpha
    - babel.core.get_global
    - quotebuf.append
    - sep.join
    - os.path.basename
    - locale_id.lower
    - format_str.find
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - datetime.time
    - result.append
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - tok_value.replace
    - babel.dates.tokenize_pattern.append_chars
    - os.path.dirname
    - <builtin>.isinstance
    - pattern.replace
    - <builtin>.bool
    - babel.dates.DateTimePattern.__init__
    - <builtin>.enumerate
    - charbuf.extend
    - charbuf.append
    - re.findall
    - babel.core.parse_locale
    - babel.dates.parse_pattern
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - fmt.pattern.lower
    - <builtin>.int
    - babel.dates.get_time_format
    - <builtin>.sorted
    - babel.dates._cached_parse_pattern
    - format_str.index
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.dates.tokenize_pattern
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - string.lower
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised:
    - ParseError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: string.lower
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - pattern
    - format
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1402
    functionName: babel.dates.DateTimePattern.__init__
    functionSourceFile: babel.dates
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1406
    functionName: babel.dates.DateTimePattern.__repr__
    functionSourceFile: babel.dates
    functionUses: 0
    functionsReached:
    - <builtin>.type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1409
    functionName: babel.dates.DateTimePattern.__str__
    functionSourceFile: babel.dates
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1413
    functionName: babel.dates.DateTimePattern.__mod__
    functionSourceFile: babel.dates
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 21
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 11
    EdgeCount: 30
    ICount: 0
    IfCount: 21
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 1441
    functionName: babel.dates.DateTimeFormat.__getitem__
    functionSourceFile: babel.dates
    functionUses: 0
    functionsReached:
    - pickle.load
    - lang.isalpha
    - babel.dates.DateTimeFormat.format_frac_seconds
    - babel.dates.DateTimeFormat.format_period
    - babel.dates.get_timezone_name
    - <builtin>.filter
    - babel.dates._get_datetime
    - babel.core.Locale.parse._try_load_reducing
    - babel.dates._get_tz_name
    - babel.dates.DateTimeFormat.format_day_of_week_in_month
    - tzinfo.normalize
    - babel.core.Locale.__init__
    - os.path.isfile
    - pytz.timezone
    - babel.localedata.normalize_locale
    - babel.core._raise_no_data_error
    - dt.astimezone
    - name.strip
    - identifier.split
    - _windows_reserved_name_re.match
    - babel.dates.get_month_names
    - babel.dates.get_timezone_gmt
    - babel.dates.DateTimeFormat.get_day_of_year
    - <builtin>.open
    - date.weekday
    - os.path.exists
    - babel.core.get_global
    - babel.dates.DateTimeFormat.get_week_of_year
    - os.path.basename
    - _global_data.get
    - datetime.datetime.combine
    - char.islower
    - babel.dates.get_timezone
    - os.path.join
    - <builtin>.str
    - <builtin>.hasattr
    - <builtin>.round
    - time.timetz
    - metazone_info.get
    - <builtin>.isinstance
    - babel.dates._get_dt_and_tzinfo
    - babel.core.parse_locale
    - time.astimezone
    - <builtin>.len
    - babel.dates.get_era_names
    - <builtin>.int
    - datetime.tzinfo.utcoffset
    - babel.dates.DateTimeFormat.get_week_number
    - babel.dates.DateTimeFormat.format_weekday
    - zone.split
    - <builtin>.tuple
    - babel.dates.DateTimeFormat.get_week_of_month
    - datetime.datetime.now
    - datetime.date
    - babel.dates._get_time
    - tzinfo.dst
    - char.isupper
    - babel.dates._ensure_datetime_tzinfo
    - time.replace
    - os.path.splitext
    - dt.replace
    - babel.core.get_locale_identifier
    - babel.dates.get_day_names
    - zoneinfo.ZoneInfo
    - babel.dates.DateTimeFormat.format_month
    - babel.dates.DateTimeFormat.format_year
    - babel.dates.DateTimeFormat.format_timezone
    - date.replace
    - babel.core.Locale.parse._try_load
    - babel.dates.DateTimeFormat.format_quarter
    - parts.pop
    - babel.dates.get_period_names
    - babel.dates.get_period_id
    - babel.dates.DateTimeFormat.format_milliseconds_in_day
    - babel.core.Locale.parse
    - babel.localedata.exists
    - babel.dates.DateTimeFormat.format_week
    - babel.dates.get_timezone_location
    - sep.join
    - locale_id.lower
    - datetime.time
    - babel.dates.DateTimeFormat.format_era
    - babel.dates.DateTimeFormat.format
    - itertools.chain.from_iterable
    - os.path.dirname
    - zone.replace
    - <builtin>.bool
    - babel.dates.DateTimeFormat.format_day_of_year
    - <builtin>.divmod
    - babel.localedata.resolve_locale_filename
    - <builtin>.max
    - identifier.partition
    - babel.dates.get_quarter_names
    - datetime.datetime.fromtimestamp
    - tzinfo.tzname
    - datetime.date.today
    linkageType: pythonLinkage
    raised:
    - KeyError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - char
    - num
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1512
    functionName: babel.dates.DateTimeFormat.format_era
    functionSourceFile: babel.dates
    functionUses: 1
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - babel.dates.get_era_names
    - <builtin>.len
    - <builtin>.int
    - babel.localedata.resolve_locale_filename
    - <builtin>.max
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - char
    - num
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1517
    functionName: babel.dates.DateTimeFormat.format_year
    functionSourceFile: babel.dates
    functionUses: 1
    functionsReached:
    - date.weekday
    - babel.dates.DateTimeFormat.format
    - datetime.date
    - babel.dates.DateTimeFormat.get_week_number
    - babel.dates.DateTimeFormat.get_week_of_year
    - date.replace
    - char.isupper
    - babel.dates.DateTimeFormat.get_day_of_year
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - char
    - num
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1530
    functionName: babel.dates.DateTimeFormat.format_quarter
    functionSourceFile: babel.dates
    functionUses: 1
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - babel.dates.get_quarter_names
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - char
    - num
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1538
    functionName: babel.dates.DateTimeFormat.format_month
    functionSourceFile: babel.dates
    functionUses: 1
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.dates.get_month_names
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - char
    - num
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1545
    functionName: babel.dates.DateTimeFormat.format_week
    functionSourceFile: babel.dates
    functionUses: 1
    functionsReached:
    - <builtin>.str
    - babel.dates.DateTimeFormat.format
    - date.weekday
    - datetime.date
    - babel.dates.DateTimeFormat.get_week_number
    - babel.dates.DateTimeFormat.get_week_of_year
    - date.replace
    - babel.dates.DateTimeFormat.get_week_of_month
    - char.islower
    - babel.dates.DateTimeFormat.get_day_of_year
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - value
    - length
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1700
    functionName: babel.dates.DateTimeFormat.format
    functionSourceFile: ''
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - num
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1591
    functionName: babel.dates.DateTimeFormat.format_day_of_year
    functionSourceFile: babel.dates
    functionUses: 1
    functionsReached:
    - babel.dates.DateTimeFormat.get_day_of_year
    - babel.dates.DateTimeFormat.format
    - date.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1594
    functionName: babel.dates.DateTimeFormat.format_day_of_week_in_month
    functionSourceFile: babel.dates
    functionUses: 1
    functionsReached:
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e5e80a0>
    - <ast.Constant object at 0x7f1b4e5e8ac0>
    argNames:
    - self
    - char
    - num
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1553
    functionName: babel.dates.DateTimeFormat.format_weekday
    functionSourceFile: babel.dates
    functionUses: 1
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - char.islower
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - babel.dates.DateTimeFormat.format
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - babel.dates.get_day_names
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - char
    - num
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1597
    functionName: babel.dates.DateTimeFormat.format_period
    functionSourceFile: babel.dates
    functionUses: 1
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - babel.dates._get_time
    - babel.core.get_global
    - sep.join
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - time.replace
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - <builtin>.hasattr
    - time.timetz
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - tzinfo.normalize
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - time.astimezone
    - <builtin>.len
    - <builtin>.int
    - babel.localedata.resolve_locale_filename
    - <builtin>.max
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - babel.dates.get_period_names
    - identifier.split
    - babel.dates.get_period_id
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - datetime.datetime.fromtimestamp
    - babel.core.Locale.parse
    - datetime.datetime.now
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - num
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1642
    functionName: babel.dates.DateTimeFormat.format_frac_seconds
    functionSourceFile: babel.dates
    functionUses: 1
    functionsReached:
    - babel.dates.DateTimeFormat.format
    - <builtin>.round
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - num
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1651
    functionName: babel.dates.DateTimeFormat.format_milliseconds_in_day
    functionSourceFile: babel.dates
    functionUses: 1
    functionsReached:
    - babel.dates.DateTimeFormat.format
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 15
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 22
    ICount: 0
    IfCount: 15
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - char
    - num
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1660
    functionName: babel.dates.DateTimeFormat.format_timezone
    functionSourceFile: babel.dates
    functionUses: 1
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - babel.dates.get_timezone_location
    - lang.isalpha
    - tzinfo.dst
    - babel.core.get_global
    - sep.join
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - babel.dates._ensure_datetime_tzinfo
    - datetime.datetime.combine
    - babel.dates.get_timezone_name
    - babel.dates._get_datetime
    - <builtin>.filter
    - babel.dates._get_tz_name
    - babel.core.Locale.parse._try_load_reducing
    - babel.dates.get_timezone
    - os.path.join
    - os.path.splitext
    - <builtin>.str
    - datetime.time
    - itertools.chain.from_iterable
    - dt.replace
    - babel.core.get_locale_identifier
    - <builtin>.hasattr
    - tzinfo.tzname
    - metazone_info.get
    - os.path.dirname
    - <builtin>.isinstance
    - zone.replace
    - <builtin>.bool
    - zoneinfo.ZoneInfo
    - tzinfo.normalize
    - babel.dates._get_dt_and_tzinfo
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - pytz.timezone
    - <builtin>.divmod
    - babel.localedata.resolve_locale_filename
    - datetime.tzinfo.utcoffset
    - <builtin>.max
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - dt.astimezone
    - name.strip
    - parts.pop
    - identifier.split
    - zone.split
    - datetime.date.today
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - datetime.datetime.fromtimestamp
    - babel.dates.get_timezone_gmt
    - babel.core.Locale.parse
    - datetime.datetime.now
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: char.isupper
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1708
    functionName: babel.dates.DateTimeFormat.get_week_of_year
    functionSourceFile: babel.dates
    functionUses: 3
    functionsReached:
    - date.weekday
    - datetime.date
    - babel.dates.DateTimeFormat.get_week_number
    - date.replace
    - babel.dates.DateTimeFormat.get_day_of_year
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: char.islower
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1724
    functionName: babel.dates.DateTimeFormat.get_week_of_month
    functionSourceFile: babel.dates
    functionUses: 2
    functionsReached:
    - babel.dates.DateTimeFormat.get_week_number
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4de19070>
    argNames:
    - self
    - date
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1703
    functionName: babel.dates.DateTimeFormat.get_day_of_year
    functionSourceFile: babel.dates
    functionUses: 5
    functionsReached:
    - date.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: date.replace
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4d2b2520>
    argNames:
    - self
    - day_of_period
    - day_of_week
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1728
    functionName: babel.dates.DateTimeFormat.get_week_number
    functionSourceFile: ''
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: date.weekday
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - pattern
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1807
    functionName: babel.dates._cached_parse_pattern
    functionSourceFile: babel.dates
    functionUses: 17
    functionsReached:
    - charbuf.extend
    - charbuf.append
    - result.append
    - babel.dates.tokenize_pattern
    - babel.dates.tokenize_pattern.append_field
    - quotebuf.append
    - tok_value.replace
    - babel.dates.tokenize_pattern.append_chars
    - pattern.replace
    - babel.dates.DateTimePattern.__init__
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    - ValueError
    returnType: N/A
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 19
    ICount: 11
    IfCount: 13
    argCount: 1
    argDefaultValues: []
    argNames:
    - pattern
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1824
    functionName: babel.dates.tokenize_pattern
    functionSourceFile: babel.dates
    functionUses: 20
    functionsReached:
    - charbuf.extend
    - charbuf.append
    - result.append
    - babel.dates.tokenize_pattern.append_field
    - quotebuf.append
    - babel.dates.tokenize_pattern.append_chars
    - pattern.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tok_value.replace
    functionSourceFile: <builtin>
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1846
    functionName: babel.dates.tokenize_pattern.append_chars
    functionSourceFile: babel.dates
    functionUses: 21
    functionsReached:
    - result.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1850
    functionName: babel.dates.tokenize_pattern.append_field
    functionSourceFile: babel.dates
    functionUses: 21
    functionsReached:
    - result.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: charbuf.append
    functionSourceFile: <builtin>
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: charbuf.extend
    functionSourceFile: <builtin>
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: quotebuf.append
    functionSourceFile: <builtin>
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - tokens
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1893
    functionName: babel.dates.untokenize_pattern
    functionSourceFile: babel.dates
    functionUses: 1
    functionsReached:
    - output.append
    - <builtin>.any
    - tok_value.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: output.append
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 5
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - pattern
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1914
    functionName: babel.dates.split_interval_pattern
    functionSourceFile: babel.dates
    functionUses: 0
    functionsReached:
    - charbuf.extend
    - charbuf.append
    - result.append
    - babel.dates.tokenize_pattern.append_field
    - babel.dates.tokenize_pattern
    - <builtin>.set
    - output.append
    - quotebuf.append
    - tok_value.replace
    - babel.dates.tokenize_pattern.append_chars
    - seen_fields.clear
    - parts.append
    - <builtin>.any
    - pattern.replace
    - seen_fields.add
    - babel.dates.untokenize_pattern
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parts.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: seen_fields.clear
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: seen_fields.add
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: -1
    functionName: babel.messages.plurals
    functionSourceFile: babel.messages.plurals
    functionUses: 0
    functionsReached:
    - identifier.partition
    - babel.core.parse_locale
    - lang.isalpha
    - sep.join
    - babel.core.get_locale_identifier
    - parts.pop
    - identifier.split
    - <builtin>.len
    - os.getenv
    - <builtin>.isinstance
    - <builtin>.tuple
    - locale.split
    - <builtin>.filter
    - babel.core.default_locale
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 213
    functionName: babel.messages.plurals._PluralTuple.num_plurals
    functionSourceFile: babel.messages.plurals
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 218
    functionName: babel.messages.plurals._PluralTuple.plural_expr
    functionSourceFile: babel.messages.plurals
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 223
    functionName: babel.messages.plurals._PluralTuple.plural_forms
    functionSourceFile: babel.messages.plurals
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 227
    functionName: babel.messages.plurals._PluralTuple.__str__
    functionSourceFile: babel.messages.plurals
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: -1
    functionName: babel.messages.checkers
    functionSourceFile: babel.messages.checkers
    functionUses: 0
    functionsReached:
    - pkg_resources.working_set.iter_entry_points
    - functools.partial
    - importlib.metadata.entry_points
    - <builtin>.len
    - <builtin>.isinstance
    - babel.messages._compat.find_entrypoints
    - babel.messages.checkers._find_checkers
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - catalog
    - message
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 27
    functionName: babel.messages.checkers.num_plurals
    functionSourceFile: babel.messages.checkers
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - TranslationError
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 3
    IfCount: 6
    argCount: 2
    argDefaultValues: []
    argNames:
    - catalog
    - message
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 47
    functionName: babel.messages.checkers.python_format
    functionSourceFile: babel.messages.checkers
    functionUses: 0
    functionsReached:
    - <builtin>.str
    - babel.messages.checkers._validate_format._compatible
    - result.append
    - <builtin>.zip
    - babel.messages.checkers._validate_format._parse
    - babel.messages.checkers._validate_format._check_positional
    - <builtin>.len
    - <builtin>.dict
    - <builtin>.isinstance
    - PYTHON_FORMAT.finditer
    - <builtin>.enumerate
    - match.groups
    - <builtin>.bool
    - babel.messages.checkers._validate_format
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 1
    IfCount: 8
    argCount: 2
    argDefaultValues: []
    argNames:
    - format
    - alternative
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 66
    functionName: babel.messages.checkers._validate_format
    functionSourceFile: babel.messages.checkers
    functionUses: 1
    functionsReached:
    - <builtin>.str
    - babel.messages.checkers._validate_format._compatible
    - result.append
    - <builtin>.zip
    - babel.messages.checkers._validate_format._parse
    - babel.messages.checkers._validate_format._check_positional
    - <builtin>.len
    - <builtin>.dict
    - PYTHON_FORMAT.finditer
    - match.groups
    - <builtin>.bool
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised:
    - TranslationError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - string
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 95
    functionName: babel.messages.checkers._validate_format._parse
    functionSourceFile: babel.messages.checkers
    functionUses: 2
    functionsReached:
    - match.groups
    - <builtin>.str
    - result.append
    - PYTHON_FORMAT.finditer
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: PYTHON_FORMAT.finditer
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: match.groups
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - a
    - b
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 104
    functionName: babel.messages.checkers._validate_format._compatible
    functionSourceFile: babel.messages.checkers
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - results
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 112
    functionName: babel.messages.checkers._validate_format._check_positional
    functionSourceFile: babel.messages.checkers
    functionUses: 2
    functionsReached:
    - <builtin>.bool
    linkageType: pythonLinkage
    raised:
    - TranslationError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 164
    functionName: babel.messages.checkers._find_checkers
    functionSourceFile: babel.messages.checkers
    functionUses: 1
    functionsReached:
    - pkg_resources.working_set.iter_entry_points
    - functools.partial
    - importlib.metadata.entry_points
    - <builtin>.len
    - <builtin>.isinstance
    - babel.messages._compat.find_entrypoints
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - group_name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 5
    functionName: babel.messages._compat.find_entrypoints
    functionSourceFile: babel.messages._compat
    functionUses: 8
    functionsReached:
    - importlib.metadata.entry_points
    - pkg_resources.working_set.iter_entry_points
    - <builtin>.isinstance
    - functools.partial
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: babel.messages._compat
    functionSourceFile: babel.messages._compat
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: importlib.metadata.entry_points
    functionSourceFile: importlib
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pkg_resources.working_set.iter_entry_points
    functionSourceFile: pkg_resources
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: functools.partial
    functionSourceFile: functools
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: -1
    functionName: babel.lists
    functionSourceFile: babel.lists
    functionUses: 0
    functionsReached:
    - identifier.partition
    - babel.core.parse_locale
    - lang.isalpha
    - sep.join
    - babel.core.get_locale_identifier
    - parts.pop
    - identifier.split
    - <builtin>.len
    - os.getenv
    - <builtin>.isinstance
    - <builtin>.tuple
    - locale.split
    - <builtin>.filter
    - babel.core.default_locale
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 28
    functionName: babel.lists.__getattr__
    functionSourceFile: babel.lists
    functionUses: 0
    functionsReached:
    - warnings.warn
    linkageType: pythonLinkage
    raised:
    - AttributeError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e2e2880>
    - <ast.Constant object at 0x7f1b4e2e2f70>
    argNames:
    - lst
    - style
    - locale
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 39
    functionName: babel.lists.format_list
    functionSourceFile: babel.lists
    functionUses: 0
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - babel.lists._resolve_list_style
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - _style_fallbacks.get
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - locale
    - style
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 134
    functionName: babel.lists._resolve_list_style
    functionSourceFile: babel.lists
    functionUses: 1
    functionsReached:
    - _style_fallbacks.get
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _style_fallbacks.get
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: babel.languages
    functionSourceFile: babel.languages
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e7bb2e0>
    - <ast.Constant object at 0x7f1b4e7bbb80>
    argNames:
    - territory
    - regional
    - de_facto
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 6
    functionName: babel.languages.get_official_languages
    functionSourceFile: babel.languages
    functionUses: 0
    functionsReached:
    - os.path.join
    - pickle.load
    - <builtin>.str
    - <builtin>.open
    - babel.core._raise_no_data_error
    - babel.core.get_global
    - os.path.isfile
    - languages.items
    - _global_data.get
    - pairs.sort
    - os.path.dirname
    - <builtin>.tuple
    - info.get
    - allowed_stati.add
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: allowed_stati.add
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: languages.items
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: info.get
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pairs.sort
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - territory
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 50
    functionName: babel.languages.get_territory_language_info
    functionSourceFile: babel.languages
    functionUses: 0
    functionsReached:
    - pickle.load
    - <builtin>.open
    - os.path.join
    - <builtin>.str
    - babel.core._raise_no_data_error
    - babel.core.get_global
    - os.path.isfile
    - _global_data.get
    - os.path.dirname
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: -1
    functionName: babel.numbers
    functionSourceFile: babel.numbers
    functionUses: 0
    functionsReached:
    - identifier.partition
    - typing.overload
    - babel.core.parse_locale
    - lang.isalpha
    - sep.join
    - babel.core.get_locale_identifier
    - parts.pop
    - identifier.split
    - <builtin>.len
    - re.compile
    - os.getenv
    - <builtin>.isinstance
    - <builtin>.tuple
    - locale.split
    - <builtin>.filter
    - babel.core.default_locale
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - identifier
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 40
    functionName: babel.numbers.UnknownCurrencyError.__init__
    functionSourceFile: babel.numbers
    functionUses: 0
    functionsReached:
    - Exception.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e80f6d0>
    argNames:
    - locale
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 50
    functionName: babel.numbers.list_currencies
    functionSourceFile: babel.numbers
    functionUses: 3
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - <builtin>.set
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4ee79eb0>
    argNames:
    - currency
    - locale
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 66
    functionName: babel.numbers.validate_currency
    functionSourceFile: babel.numbers
    functionUses: 2
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.numbers.list_currencies
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - <builtin>.set
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised:
    - UnknownCurrencyError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e72a0d0>
    argNames:
    - currency
    - locale
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 78
    functionName: babel.numbers.is_currency
    functionSourceFile: babel.numbers
    functionUses: 1
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.numbers.list_currencies
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - <builtin>.set
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.numbers.validate_currency
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e6494f0>
    argNames:
    - currency
    - locale
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 92
    functionName: babel.numbers.normalize_currency
    functionSourceFile: babel.numbers
    functionUses: 0
    functionsReached:
    - pickle.load
    - <builtin>.open
    - currency.upper
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.numbers.list_currencies
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.numbers.is_currency
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - <builtin>.set
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.numbers.validate_currency
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: currency.upper
    functionSourceFile: <builtin>
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e579b80>
    - <ast.Constant object at 0x7f1b4e579040>
    argNames:
    - currency
    - count
    - locale
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 107
    functionName: babel.numbers.get_currency_name
    functionSourceFile: babel.numbers
    functionUses: 19
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.Locale.plural_form
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e6ce970>
    argNames:
    - currency
    - locale
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 141
    functionName: babel.numbers.get_currency_symbol
    functionSourceFile: babel.numbers
    functionUses: 19
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - currency
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 154
    functionName: babel.numbers.get_currency_precision
    functionSourceFile: babel.numbers
    functionUses: 19
    functionsReached:
    - pickle.load
    - <builtin>.open
    - os.path.join
    - babel.core._raise_no_data_error
    - babel.core.get_global
    - os.path.isfile
    - _global_data.get
    - os.path.dirname
    - precisions.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: precisions.get
    functionSourceFile: <builtin>
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e6cee80>
    - <ast.Constant object at 0x7f1b4e6ce8b0>
    argNames:
    - currency
    - count
    - locale
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 168
    functionName: babel.numbers.get_currency_unit_pattern
    functionSourceFile: babel.numbers
    functionUses: 3
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.Locale.plural_form
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.overload
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 3
    IfCount: 8
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e57c460>
    - <ast.Constant object at 0x7f1b4e57c580>
    - <ast.Constant object at 0x7f1b4e57ca90>
    - <ast.Constant object at 0x7f1b4e57c190>
    - <ast.Constant object at 0x7f1b4e57c910>
    argNames:
    - territory
    - start_date
    - end_date
    - tender
    - non_tender
    - include_details
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 225
    functionName: babel.numbers.get_territory_currencies
    functionSourceFile: babel.numbers
    functionUses: 0
    functionsReached:
    - os.path.join
    - pickle.load
    - <builtin>.open
    - result.append
    - end_date.date
    - datetime.date
    - babel.core._raise_no_data_error
    - babel.core.get_global
    - os.path.isfile
    - _global_data.get
    - os.path.dirname
    - currencies.get
    - <builtin>.isinstance
    - territory.upper
    - datetime.date.today
    - start_date.date
    - babel.numbers.get_territory_currencies._is_active
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: start_date.date
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: end_date.date
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: territory.upper
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: currencies.get
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - start
    - end
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 295
    functionName: babel.numbers.get_territory_currencies._is_active
    functionSourceFile: babel.numbers
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e823160>
    argNames:
    - locale
    - numbering_system
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 323
    functionName: babel.numbers._get_numbering_system
    functionSourceFile: babel.numbers
    functionUses: 31
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - locale
    - numbering_system
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 333
    functionName: babel.numbers._get_number_symbols
    functionSourceFile: babel.numbers
    functionUses: 30
    functionsReached:
    - babel.numbers._get_numbering_system
    linkageType: pythonLinkage
    raised:
    - UnsupportedNumberingSystemError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e6031f0>
    argNames:
    - locale
    - numbering_system
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 353
    functionName: babel.numbers.get_decimal_symbol
    functionSourceFile: babel.numbers
    functionUses: 21
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - babel.numbers._get_number_symbols
    - babel.numbers._get_numbering_system
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e7734f0>
    argNames:
    - locale
    - numbering_system
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 376
    functionName: babel.numbers.get_plus_sign_symbol
    functionSourceFile: babel.numbers
    functionUses: 20
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - babel.numbers._get_number_symbols
    - babel.numbers._get_numbering_system
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e7fe910>
    argNames:
    - locale
    - numbering_system
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 399
    functionName: babel.numbers.get_minus_sign_symbol
    functionSourceFile: babel.numbers
    functionUses: 20
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - babel.numbers._get_number_symbols
    - babel.numbers._get_numbering_system
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e7fe610>
    argNames:
    - locale
    - numbering_system
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 422
    functionName: babel.numbers.get_exponential_symbol
    functionSourceFile: babel.numbers
    functionUses: 0
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - babel.numbers._get_number_symbols
    - babel.numbers._get_numbering_system
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e5f8d60>
    argNames:
    - locale
    - numbering_system
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 445
    functionName: babel.numbers.get_group_symbol
    functionSourceFile: babel.numbers
    functionUses: 22
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - babel.numbers._get_number_symbols
    - babel.numbers._get_numbering_system
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e5f8b80>
    argNames:
    - locale
    - numbering_system
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 468
    functionName: babel.numbers.get_infinity_symbol
    functionSourceFile: babel.numbers
    functionUses: 20
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - babel.numbers._get_number_symbols
    - babel.numbers._get_numbering_system
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4ebf9d90>
    argNames:
    - number
    - locale
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 491
    functionName: babel.numbers.format_number
    functionSourceFile: babel.numbers
    functionUses: 0
    functionsReached:
    - pickle.load
    - lang.isalpha
    - babel.numbers.get_currency_symbol
    - exp.startswith
    - <builtin>.filter
    - number.rsplit
    - babel.core.Locale.parse._try_load_reducing
    - <builtin>.abs
    - text.partition
    - babel.numbers.get_minus_sign_symbol
    - babel.numbers.get_group_symbol
    - rv.groups
    - <builtin>.min
    - babel.core.Locale.plural_form
    - p.rfind
    - babel.numbers.NumberPattern._format_int
    - babel.core.Locale.__init__
    - os.path.isfile
    - babel.numbers.get_currency_name
    - babel.numbers.parse_pattern
    - decimal.Decimal
    - babel.localedata.normalize_locale
    - babel.core._raise_no_data_error
    - name.strip
    - identifier.split
    - value.is_signed
    - _windows_reserved_name_re.match
    - <builtin>.open
    - currency.upper
    - babel.numbers.get_plus_sign_symbol
    - os.path.exists
    - babel.core.get_global
    - os.path.basename
    - _global_data.get
    - precisions.get
    - babel.numbers.parse_pattern._match_number
    - os.path.join
    - <builtin>.str
    - babel.numbers.NumberPattern.scientific_notation_elements
    - _number_pattern_re.search
    - <builtin>.isinstance
    - babel.core.parse_locale
    - babel.numbers.get_currency_precision
    - <builtin>.len
    - babel.numbers.get_decimal_symbol
    - value.scaleb
    - <builtin>.int
    - babel.numbers.format_decimal
    - <builtin>.tuple
    - babel.numbers.get_decimal_quantum
    - os.path.splitext
    - babel.numbers.NumberPattern._format_frac
    - pattern.split
    - babel.core.get_locale_identifier
    - babel.numbers.NumberPattern._quantize_value
    - babel.numbers.parse_pattern.parse_precision
    - babel.numbers.NumberPattern.compute_scale
    - babel.core.Locale.parse._try_load
    - value.quantize
    - value.is_infinite
    - parts.pop
    - babel.core.Locale.parse
    - babel.numbers.parse_grouping
    - babel.localedata.exists
    - sep.join
    - locale_id.lower
    - babel.numbers.NumberPattern.apply
    - itertools.chain.from_iterable
    - exp.lstrip
    - os.path.dirname
    - <builtin>.bool
    - babel.numbers.get_infinity_symbol
    - warnings.warn
    - retval.replace
    - babel.localedata.resolve_locale_filename
    - <builtin>.max
    - babel.numbers._get_number_symbols
    - babel.numbers._get_numbering_system
    - value.adjusted
    - identifier.partition
    - babel.numbers.NumberPattern._format_significant
    - number.split
    - babel.numbers.NumberPattern.__init__
    - re.sub
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e511af0>
    - <ast.Constant object at 0x7f1b4e5112b0>
    - <ast.Constant object at 0x7f1b4e511a30>
    - <ast.Constant object at 0x7f1b4e511ac0>
    argNames:
    - number
    - format
    - locale
    - decimal_quantization
    - group_separator
    - numbering_system
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 539
    functionName: babel.numbers.format_decimal
    functionSourceFile: babel.numbers
    functionUses: 6
    functionsReached:
    - pickle.load
    - lang.isalpha
    - babel.numbers.get_currency_symbol
    - exp.startswith
    - <builtin>.filter
    - number.rsplit
    - babel.core.Locale.parse._try_load_reducing
    - <builtin>.abs
    - text.partition
    - babel.numbers.get_minus_sign_symbol
    - babel.numbers.get_group_symbol
    - rv.groups
    - <builtin>.min
    - babel.core.Locale.plural_form
    - p.rfind
    - babel.numbers.NumberPattern._format_int
    - babel.core.Locale.__init__
    - os.path.isfile
    - babel.numbers.get_currency_name
    - babel.numbers.parse_pattern
    - decimal.Decimal
    - babel.localedata.normalize_locale
    - babel.core._raise_no_data_error
    - name.strip
    - identifier.split
    - value.is_signed
    - _windows_reserved_name_re.match
    - <builtin>.open
    - currency.upper
    - babel.numbers.get_plus_sign_symbol
    - os.path.exists
    - babel.core.get_global
    - os.path.basename
    - _global_data.get
    - precisions.get
    - babel.numbers.parse_pattern._match_number
    - os.path.join
    - <builtin>.str
    - babel.numbers.NumberPattern.scientific_notation_elements
    - _number_pattern_re.search
    - <builtin>.isinstance
    - babel.core.parse_locale
    - babel.numbers.get_currency_precision
    - <builtin>.len
    - babel.numbers.get_decimal_symbol
    - value.scaleb
    - <builtin>.int
    - <builtin>.tuple
    - babel.numbers.get_decimal_quantum
    - os.path.splitext
    - babel.numbers.NumberPattern._format_frac
    - pattern.split
    - babel.core.get_locale_identifier
    - babel.numbers.NumberPattern._quantize_value
    - babel.numbers.parse_pattern.parse_precision
    - babel.numbers.NumberPattern.compute_scale
    - babel.core.Locale.parse._try_load
    - value.quantize
    - value.is_infinite
    - parts.pop
    - babel.core.Locale.parse
    - babel.localedata.exists
    - babel.numbers.parse_grouping
    - sep.join
    - locale_id.lower
    - babel.numbers.NumberPattern.apply
    - itertools.chain.from_iterable
    - exp.lstrip
    - os.path.dirname
    - <builtin>.bool
    - babel.numbers.get_infinity_symbol
    - warnings.warn
    - retval.replace
    - babel.localedata.resolve_locale_filename
    - <builtin>.max
    - babel.numbers._get_number_symbols
    - identifier.partition
    - babel.numbers._get_numbering_system
    - value.adjusted
    - babel.numbers.NumberPattern._format_significant
    - number.split
    - babel.numbers.NumberPattern.__init__
    - re.sub
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - number
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 519
    functionName: babel.numbers.get_decimal_precision
    functionSourceFile: babel.numbers
    functionUses: 0
    functionsReached:
    - <builtin>.abs
    - <builtin>.isinstance
    - number.normalize
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: number.normalize
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - precision
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 533
    functionName: babel.numbers.get_decimal_quantum
    functionSourceFile: babel.numbers
    functionUses: 21
    functionsReached:
    - <builtin>.isinstance
    - decimal.Decimal
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 1
    IfCount: 6
    argCount: 1
    argDefaultValues: []
    argNames:
    - pattern
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1300
    functionName: babel.numbers.parse_pattern
    functionSourceFile: babel.numbers
    functionUses: 19
    functionsReached:
    - babel.numbers.parse_grouping
    - pattern.split
    - babel.numbers.NumberPattern.compute_scale
    - rv.groups
    - p.rfind
    - number.split
    - exp.lstrip
    - <builtin>.len
    - _number_pattern_re.search
    - <builtin>.isinstance
    - exp.startswith
    - babel.numbers.NumberPattern.__init__
    - number.rsplit
    - babel.numbers.parse_pattern.parse_precision
    - babel.numbers.parse_pattern._match_number
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 2
    IfCount: 9
    argCount: 9
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e767d30>
    - <ast.Constant object at 0x7f1b4e7678b0>
    - <ast.Constant object at 0x7f1b4e767220>
    - <ast.Constant object at 0x7f1b4e767040>
    - <ast.Constant object at 0x7f1b4e7679a0>
    argNames:
    - self
    - value
    - locale
    - currency
    - currency_digits
    - decimal_quantization
    - force_frac
    - group_separator
    - numbering_system
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 1446
    functionName: babel.numbers.NumberPattern.apply
    functionSourceFile: babel.numbers
    functionUses: 18
    functionsReached:
    - pickle.load
    - <builtin>.open
    - currency.upper
    - babel.numbers.get_plus_sign_symbol
    - babel.localedata.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.exists
    - os.path.basename
    - locale_id.lower
    - babel.numbers.get_currency_symbol
    - _global_data.get
    - babel.numbers.get_decimal_quantum
    - precisions.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - <builtin>.abs
    - os.path.join
    - text.partition
    - <builtin>.str
    - babel.numbers.NumberPattern._format_frac
    - itertools.chain.from_iterable
    - babel.numbers.NumberPattern.scientific_notation_elements
    - babel.core.Locale.parse
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - babel.numbers.get_minus_sign_symbol
    - <builtin>.bool
    - babel.numbers.get_group_symbol
    - babel.numbers.NumberPattern._quantize_value
    - babel.numbers.get_infinity_symbol
    - <builtin>.min
    - babel.core.Locale.plural_form
    - babel.core.parse_locale
    - warnings.warn
    - babel.numbers.NumberPattern._format_int
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - babel.numbers.get_currency_precision
    - <builtin>.len
    - value.quantize
    - babel.numbers.get_decimal_symbol
    - value.scaleb
    - <builtin>.int
    - babel.numbers.get_currency_name
    - retval.replace
    - decimal.Decimal
    - babel.localedata.resolve_locale_filename
    - <builtin>.max
    - babel.numbers._get_number_symbols
    - babel.numbers._get_numbering_system
    - babel.core._raise_no_data_error
    - value.adjusted
    - value.is_infinite
    - identifier.partition
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - babel.numbers.NumberPattern._format_significant
    - value.is_signed
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - re.sub
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - number
    - format_type
    - locale
    - fraction_digits
    - numbering_system
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 608
    functionName: babel.numbers.format_compact_decimal
    functionSourceFile: babel.numbers
    functionUses: 1
    functionsReached:
    - pickle.load
    - lang.isalpha
    - babel.numbers.get_currency_symbol
    - exp.startswith
    - <builtin>.filter
    - number.rsplit
    - babel.core.Locale.parse._try_load_reducing
    - <builtin>.abs
    - text.partition
    - babel.numbers.get_minus_sign_symbol
    - babel.numbers.get_group_symbol
    - rv.groups
    - <builtin>.min
    - babel.core.Locale.plural_form
    - p.rfind
    - babel.numbers.NumberPattern._format_int
    - babel.core.Locale.__init__
    - os.path.isfile
    - babel.numbers.get_currency_name
    - typing.cast
    - babel.numbers.parse_pattern
    - decimal.Decimal
    - babel.localedata.normalize_locale
    - babel.core._raise_no_data_error
    - name.strip
    - identifier.split
    - value.is_signed
    - _windows_reserved_name_re.match
    - <builtin>.open
    - currency.upper
    - babel.numbers.get_plus_sign_symbol
    - os.path.exists
    - babel.core.get_global
    - os.path.basename
    - _global_data.get
    - precisions.get
    - babel.numbers.parse_pattern._match_number
    - os.path.join
    - <builtin>.str
    - babel.numbers.NumberPattern.scientific_notation_elements
    - <builtin>.round
    - _number_pattern_re.search
    - <builtin>.isinstance
    - babel.numbers._get_compact_format
    - babel.core.parse_locale
    - babel.numbers.get_currency_precision
    - <builtin>.len
    - babel.numbers.get_decimal_symbol
    - <builtin>.int
    - value.scaleb
    - <builtin>.tuple
    - babel.numbers.get_decimal_quantum
    - os.path.splitext
    - babel.numbers.NumberPattern._format_frac
    - pattern.split
    - babel.core.get_locale_identifier
    - babel.numbers.NumberPattern._quantize_value
    - babel.numbers.parse_pattern.parse_precision
    - babel.numbers.NumberPattern.compute_scale
    - babel.core.Locale.parse._try_load
    - value.quantize
    - <builtin>.sorted
    - value.is_infinite
    - parts.pop
    - typing.cast.is_infinite
    - babel.core.Locale.parse
    - babel.numbers.parse_grouping
    - babel.localedata.exists
    - sep.join
    - locale_id.lower
    - babel.numbers.NumberPattern.apply
    - itertools.chain.from_iterable
    - pattern.count
    - exp.lstrip
    - os.path.dirname
    - <builtin>.bool
    - babel.numbers.get_infinity_symbol
    - warnings.warn
    - typing.cast.is_nan
    - retval.replace
    - babel.localedata.resolve_locale_filename
    - <builtin>.max
    - babel.numbers._get_number_symbols
    - babel.numbers._get_numbering_system
    - value.adjusted
    - identifier.partition
    - babel.numbers.NumberPattern._format_significant
    - number.split
    - babel.numbers.NumberPattern.__init__
    - re.sub
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 1
    IfCount: 7
    argCount: 4
    argDefaultValues: []
    argNames:
    - number
    - compact_format
    - locale
    - fraction_digits
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 656
    functionName: babel.numbers._get_compact_format
    functionSourceFile: babel.numbers
    functionUses: 4
    functionsReached:
    - babel.numbers.parse_grouping
    - exp.startswith
    - number.rsplit
    - babel.numbers.parse_pattern._match_number
    - <builtin>.abs
    - <builtin>.str
    - pattern.split
    - pattern.count
    - <builtin>.round
    - exp.lstrip
    - _number_pattern_re.search
    - <builtin>.isinstance
    - babel.numbers.parse_pattern.parse_precision
    - rv.groups
    - babel.core.Locale.plural_form
    - babel.numbers.NumberPattern.compute_scale
    - p.rfind
    - typing.cast.is_nan
    - <builtin>.len
    - <builtin>.int
    - <builtin>.sorted
    - typing.cast
    - babel.numbers.parse_pattern
    - decimal.Decimal
    - typing.cast.is_infinite
    - number.split
    - babel.numbers.NumberPattern.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.is_nan
    functionSourceFile: typing
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast.is_infinite
    functionSourceFile: typing
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pattern.count
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 9
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e5e82b0>
    - <ast.Constant object at 0x7f1b4e5e8f10>
    - <ast.Constant object at 0x7f1b4e5e8490>
    - <ast.Constant object at 0x7f1b4e5e8070>
    - <ast.Constant object at 0x7f1b4e5e84f0>
    - <ast.Constant object at 0x7f1b4e5e8400>
    argNames:
    - number
    - currency
    - format
    - locale
    - currency_digits
    - format_type
    - decimal_quantization
    - group_separator
    - numbering_system
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 705
    functionName: babel.numbers.format_currency
    functionSourceFile: babel.numbers
    functionUses: 1
    functionsReached:
    - pickle.load
    - lang.isalpha
    - babel.numbers.get_currency_symbol
    - exp.startswith
    - <builtin>.filter
    - number.rsplit
    - babel.core.Locale.parse._try_load_reducing
    - <builtin>.abs
    - text.partition
    - babel.numbers.get_minus_sign_symbol
    - babel.numbers.get_group_symbol
    - rv.groups
    - <builtin>.min
    - babel.core.Locale.plural_form
    - p.rfind
    - babel.numbers.NumberPattern._format_int
    - babel.core.Locale.__init__
    - os.path.isfile
    - babel.numbers.get_currency_name
    - babel.numbers.parse_pattern
    - decimal.Decimal
    - babel.localedata.normalize_locale
    - babel.core._raise_no_data_error
    - name.strip
    - identifier.split
    - value.is_signed
    - _windows_reserved_name_re.match
    - <builtin>.open
    - currency.upper
    - babel.numbers.get_plus_sign_symbol
    - os.path.exists
    - babel.core.get_global
    - os.path.basename
    - _global_data.get
    - precisions.get
    - babel.numbers.parse_pattern._match_number
    - os.path.join
    - <builtin>.str
    - babel.numbers.NumberPattern.scientific_notation_elements
    - <builtin>.float
    - _number_pattern_re.search
    - <builtin>.isinstance
    - babel.core.parse_locale
    - babel.numbers.get_currency_precision
    - <builtin>.len
    - babel.numbers.get_decimal_symbol
    - value.scaleb
    - <builtin>.int
    - unit_pattern.format
    - <builtin>.tuple
    - babel.numbers._format_currency_long_name
    - babel.numbers.get_decimal_quantum
    - os.path.splitext
    - babel.numbers.NumberPattern._format_frac
    - pattern.split
    - babel.core.get_locale_identifier
    - babel.numbers.NumberPattern._quantize_value
    - babel.numbers.parse_pattern.parse_precision
    - babel.numbers.NumberPattern.compute_scale
    - babel.numbers.get_currency_unit_pattern
    - babel.core.Locale.parse._try_load
    - value.quantize
    - value.is_infinite
    - parts.pop
    - babel.core.Locale.parse
    - babel.localedata.exists
    - babel.numbers.parse_grouping
    - sep.join
    - locale_id.lower
    - babel.numbers.NumberPattern.apply
    - itertools.chain.from_iterable
    - exp.lstrip
    - os.path.dirname
    - <builtin>.bool
    - babel.numbers.get_infinity_symbol
    - warnings.warn
    - retval.replace
    - babel.localedata.resolve_locale_filename
    - <builtin>.max
    - babel.numbers._get_number_symbols
    - identifier.partition
    - babel.numbers._get_numbering_system
    - value.adjusted
    - babel.numbers.NumberPattern._format_significant
    - number.split
    - babel.numbers.NumberPattern.__init__
    - re.sub
    linkageType: pythonLinkage
    raised:
    - UnknownCurrencyFormatError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 8
    argDefaultValues: []
    argNames:
    - number
    - currency
    - locale
    - format
    - currency_digits
    - decimal_quantization
    - group_separator
    - numbering_system
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 844
    functionName: babel.numbers._format_currency_long_name
    functionSourceFile: babel.numbers
    functionUses: 2
    functionsReached:
    - pickle.load
    - lang.isalpha
    - babel.numbers.get_currency_symbol
    - exp.startswith
    - <builtin>.filter
    - number.rsplit
    - babel.core.Locale.parse._try_load_reducing
    - <builtin>.abs
    - text.partition
    - babel.numbers.get_minus_sign_symbol
    - babel.numbers.get_group_symbol
    - rv.groups
    - <builtin>.min
    - babel.core.Locale.plural_form
    - p.rfind
    - babel.numbers.NumberPattern._format_int
    - babel.core.Locale.__init__
    - os.path.isfile
    - babel.numbers.get_currency_name
    - babel.numbers.parse_pattern
    - decimal.Decimal
    - babel.localedata.normalize_locale
    - babel.core._raise_no_data_error
    - name.strip
    - identifier.split
    - value.is_signed
    - _windows_reserved_name_re.match
    - <builtin>.open
    - currency.upper
    - babel.numbers.get_plus_sign_symbol
    - os.path.exists
    - babel.core.get_global
    - os.path.basename
    - _global_data.get
    - precisions.get
    - babel.numbers.parse_pattern._match_number
    - os.path.join
    - <builtin>.str
    - babel.numbers.NumberPattern.scientific_notation_elements
    - <builtin>.float
    - _number_pattern_re.search
    - <builtin>.isinstance
    - babel.core.parse_locale
    - babel.numbers.get_currency_precision
    - <builtin>.len
    - babel.numbers.get_decimal_symbol
    - value.scaleb
    - <builtin>.int
    - unit_pattern.format
    - <builtin>.tuple
    - babel.numbers.get_decimal_quantum
    - os.path.splitext
    - babel.numbers.NumberPattern._format_frac
    - pattern.split
    - babel.core.get_locale_identifier
    - babel.numbers.NumberPattern._quantize_value
    - babel.numbers.parse_pattern.parse_precision
    - babel.numbers.NumberPattern.compute_scale
    - babel.numbers.get_currency_unit_pattern
    - babel.core.Locale.parse._try_load
    - value.quantize
    - value.is_infinite
    - parts.pop
    - babel.core.Locale.parse
    - babel.localedata.exists
    - babel.numbers.parse_grouping
    - sep.join
    - locale_id.lower
    - babel.numbers.NumberPattern.apply
    - itertools.chain.from_iterable
    - exp.lstrip
    - os.path.dirname
    - <builtin>.bool
    - babel.numbers.get_infinity_symbol
    - warnings.warn
    - retval.replace
    - babel.localedata.resolve_locale_filename
    - <builtin>.max
    - babel.numbers._get_number_symbols
    - identifier.partition
    - babel.numbers._get_numbering_system
    - value.adjusted
    - babel.numbers.NumberPattern._format_significant
    - number.split
    - babel.numbers.NumberPattern.__init__
    - re.sub
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.float
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: unit_pattern.format
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 6
    argDefaultValues: []
    argNames:
    - number
    - currency
    - format_type
    - locale
    - fraction_digits
    - numbering_system
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 891
    functionName: babel.numbers.format_compact_currency
    functionSourceFile: babel.numbers
    functionUses: 1
    functionsReached:
    - pickle.load
    - lang.isalpha
    - babel.numbers.get_currency_symbol
    - exp.startswith
    - <builtin>.filter
    - number.rsplit
    - babel.core.Locale.parse._try_load_reducing
    - <builtin>.abs
    - text.partition
    - babel.numbers.get_minus_sign_symbol
    - babel.numbers.get_group_symbol
    - rv.groups
    - <builtin>.min
    - babel.core.Locale.plural_form
    - p.rfind
    - babel.numbers.NumberPattern._format_int
    - babel.core.Locale.__init__
    - os.path.isfile
    - babel.numbers.get_currency_name
    - typing.cast
    - babel.numbers.parse_pattern
    - decimal.Decimal
    - babel.localedata.normalize_locale
    - babel.core._raise_no_data_error
    - name.strip
    - identifier.split
    - value.is_signed
    - _windows_reserved_name_re.match
    - <builtin>.open
    - currency.upper
    - babel.numbers.get_plus_sign_symbol
    - os.path.exists
    - babel.core.get_global
    - os.path.basename
    - _global_data.get
    - precisions.get
    - babel.numbers.parse_pattern._match_number
    - os.path.join
    - <builtin>.str
    - babel.numbers.NumberPattern.scientific_notation_elements
    - <builtin>.round
    - _number_pattern_re.search
    - <builtin>.isinstance
    - babel.numbers._get_compact_format
    - babel.core.parse_locale
    - babel.numbers.get_currency_precision
    - <builtin>.len
    - babel.numbers.get_decimal_symbol
    - <builtin>.int
    - value.scaleb
    - <builtin>.tuple
    - babel.numbers.get_decimal_quantum
    - os.path.splitext
    - babel.numbers.NumberPattern._format_frac
    - pattern.split
    - babel.core.get_locale_identifier
    - babel.numbers.NumberPattern._quantize_value
    - babel.numbers.parse_pattern.parse_precision
    - babel.numbers.NumberPattern.compute_scale
    - babel.core.Locale.parse._try_load
    - value.quantize
    - <builtin>.sorted
    - value.is_infinite
    - parts.pop
    - typing.cast.is_infinite
    - babel.core.Locale.parse
    - babel.localedata.exists
    - babel.numbers.parse_grouping
    - sep.join
    - locale_id.lower
    - babel.numbers.NumberPattern.apply
    - itertools.chain.from_iterable
    - pattern.count
    - exp.lstrip
    - os.path.dirname
    - <builtin>.bool
    - babel.numbers.get_infinity_symbol
    - warnings.warn
    - typing.cast.is_nan
    - retval.replace
    - babel.localedata.resolve_locale_filename
    - <builtin>.max
    - value.adjusted
    - babel.numbers._get_number_symbols
    - babel.numbers._get_numbering_system
    - identifier.partition
    - babel.numbers.NumberPattern._format_significant
    - number.split
    - babel.numbers.NumberPattern.__init__
    - re.sub
    linkageType: pythonLinkage
    raised:
    - UnknownCurrencyFormatError
    - ValueError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e5f3700>
    - <ast.Constant object at 0x7f1b4e5f3280>
    - <ast.Constant object at 0x7f1b4e5f3fd0>
    - <ast.Constant object at 0x7f1b4e5f35e0>
    argNames:
    - number
    - format
    - locale
    - decimal_quantization
    - group_separator
    - numbering_system
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 952
    functionName: babel.numbers.format_percent
    functionSourceFile: babel.numbers
    functionUses: 1
    functionsReached:
    - pickle.load
    - lang.isalpha
    - babel.numbers.get_currency_symbol
    - exp.startswith
    - <builtin>.filter
    - number.rsplit
    - babel.core.Locale.parse._try_load_reducing
    - <builtin>.abs
    - text.partition
    - babel.numbers.get_minus_sign_symbol
    - babel.numbers.get_group_symbol
    - rv.groups
    - <builtin>.min
    - babel.core.Locale.plural_form
    - p.rfind
    - babel.numbers.NumberPattern._format_int
    - babel.core.Locale.__init__
    - os.path.isfile
    - babel.numbers.get_currency_name
    - babel.numbers.parse_pattern
    - decimal.Decimal
    - babel.localedata.normalize_locale
    - babel.core._raise_no_data_error
    - name.strip
    - identifier.split
    - value.is_signed
    - _windows_reserved_name_re.match
    - <builtin>.open
    - currency.upper
    - babel.numbers.get_plus_sign_symbol
    - os.path.exists
    - babel.core.get_global
    - os.path.basename
    - _global_data.get
    - precisions.get
    - babel.numbers.parse_pattern._match_number
    - os.path.join
    - <builtin>.str
    - babel.numbers.NumberPattern.scientific_notation_elements
    - _number_pattern_re.search
    - <builtin>.isinstance
    - babel.core.parse_locale
    - babel.numbers.get_currency_precision
    - <builtin>.len
    - babel.numbers.get_decimal_symbol
    - value.scaleb
    - <builtin>.int
    - <builtin>.tuple
    - babel.numbers.get_decimal_quantum
    - os.path.splitext
    - babel.numbers.NumberPattern._format_frac
    - pattern.split
    - babel.core.get_locale_identifier
    - babel.numbers.NumberPattern._quantize_value
    - babel.numbers.parse_pattern.parse_precision
    - babel.numbers.NumberPattern.compute_scale
    - babel.core.Locale.parse._try_load
    - value.quantize
    - value.is_infinite
    - parts.pop
    - babel.core.Locale.parse
    - babel.localedata.exists
    - babel.numbers.parse_grouping
    - sep.join
    - locale_id.lower
    - babel.numbers.NumberPattern.apply
    - itertools.chain.from_iterable
    - exp.lstrip
    - os.path.dirname
    - <builtin>.bool
    - babel.numbers.get_infinity_symbol
    - warnings.warn
    - retval.replace
    - babel.localedata.resolve_locale_filename
    - <builtin>.max
    - babel.numbers._get_number_symbols
    - identifier.partition
    - babel.numbers._get_numbering_system
    - value.adjusted
    - babel.numbers.NumberPattern._format_significant
    - number.split
    - babel.numbers.NumberPattern.__init__
    - re.sub
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e4ba280>
    - <ast.Constant object at 0x7f1b4e4ba700>
    - <ast.Constant object at 0x7f1b4e4badc0>
    argNames:
    - number
    - format
    - locale
    - decimal_quantization
    - numbering_system
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 1016
    functionName: babel.numbers.format_scientific
    functionSourceFile: babel.numbers
    functionUses: 1
    functionsReached:
    - pickle.load
    - lang.isalpha
    - babel.numbers.get_currency_symbol
    - exp.startswith
    - <builtin>.filter
    - number.rsplit
    - babel.core.Locale.parse._try_load_reducing
    - <builtin>.abs
    - text.partition
    - babel.numbers.get_minus_sign_symbol
    - babel.numbers.get_group_symbol
    - rv.groups
    - <builtin>.min
    - babel.core.Locale.plural_form
    - p.rfind
    - babel.numbers.NumberPattern._format_int
    - babel.core.Locale.__init__
    - os.path.isfile
    - babel.numbers.get_currency_name
    - babel.numbers.parse_pattern
    - decimal.Decimal
    - babel.localedata.normalize_locale
    - babel.core._raise_no_data_error
    - name.strip
    - identifier.split
    - value.is_signed
    - _windows_reserved_name_re.match
    - <builtin>.open
    - currency.upper
    - babel.numbers.get_plus_sign_symbol
    - os.path.exists
    - babel.core.get_global
    - os.path.basename
    - _global_data.get
    - precisions.get
    - babel.numbers.parse_pattern._match_number
    - os.path.join
    - <builtin>.str
    - babel.numbers.NumberPattern.scientific_notation_elements
    - _number_pattern_re.search
    - <builtin>.isinstance
    - babel.core.parse_locale
    - babel.numbers.get_currency_precision
    - <builtin>.len
    - babel.numbers.get_decimal_symbol
    - value.scaleb
    - <builtin>.int
    - <builtin>.tuple
    - babel.numbers.get_decimal_quantum
    - os.path.splitext
    - babel.numbers.NumberPattern._format_frac
    - pattern.split
    - babel.core.get_locale_identifier
    - babel.numbers.NumberPattern._quantize_value
    - babel.numbers.parse_pattern.parse_precision
    - babel.numbers.NumberPattern.compute_scale
    - babel.core.Locale.parse._try_load
    - value.quantize
    - value.is_infinite
    - parts.pop
    - babel.core.Locale.parse
    - babel.localedata.exists
    - babel.numbers.parse_grouping
    - sep.join
    - locale_id.lower
    - babel.numbers.NumberPattern.apply
    - itertools.chain.from_iterable
    - exp.lstrip
    - os.path.dirname
    - <builtin>.bool
    - babel.numbers.get_infinity_symbol
    - warnings.warn
    - retval.replace
    - babel.localedata.resolve_locale_filename
    - <builtin>.max
    - babel.numbers._get_number_symbols
    - identifier.partition
    - babel.numbers._get_numbering_system
    - value.adjusted
    - babel.numbers.NumberPattern._format_significant
    - number.split
    - babel.numbers.NumberPattern.__init__
    - re.sub
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e5d4580>
    argNames:
    - self
    - message
    - suggestions
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1069
    functionName: babel.numbers.NumberFormatError.__init__
    functionSourceFile: babel.numbers
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e5d41f0>
    argNames:
    - string
    - locale
    - numbering_system
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1084
    functionName: babel.numbers.parse_number
    functionSourceFile: babel.numbers
    functionUses: 0
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - string.replace
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - SPACE_CHARS_RE.search
    - <builtin>.bool
    - babel.numbers.get_group_symbol
    - SPACE_CHARS_RE.sub
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - <builtin>.int
    - babel.localedata.resolve_locale_filename
    - babel.numbers._get_numbering_system
    - babel.numbers._get_number_symbols
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised:
    - NumberFormatError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: SPACE_CHARS_RE.search
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: SPACE_CHARS_RE.sub
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: string.replace
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e232850>
    - <ast.Constant object at 0x7f1b4e232be0>
    argNames:
    - string
    - locale
    - strict
    - numbering_system
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 1131
    functionName: babel.numbers.parse_decimal
    functionSourceFile: babel.numbers
    functionUses: 0
    functionsReached:
    - pickle.load
    - lang.isalpha
    - babel.numbers.get_currency_symbol
    - exp.startswith
    - <builtin>.filter
    - number.rsplit
    - babel.core.Locale.parse._try_load_reducing
    - <builtin>.abs
    - text.partition
    - babel.numbers.get_minus_sign_symbol
    - babel.numbers.get_group_symbol
    - rv.groups
    - <builtin>.min
    - babel.core.Locale.plural_form
    - p.rfind
    - babel.numbers.NumberPattern._format_int
    - babel.core.Locale.__init__
    - os.path.isfile
    - babel.numbers.get_currency_name
    - babel.numbers.parse_pattern
    - decimal.Decimal
    - babel.localedata.normalize_locale
    - babel.core._raise_no_data_error
    - name.strip
    - identifier.split
    - value.is_signed
    - decimal_part.rstrip
    - _windows_reserved_name_re.match
    - <builtin>.open
    - currency.upper
    - babel.numbers.get_plus_sign_symbol
    - os.path.exists
    - babel.core.get_global
    - os.path.basename
    - _global_data.get
    - precisions.get
    - babel.numbers.parse_pattern._match_number
    - os.path.join
    - <builtin>.str
    - babel.numbers.NumberPattern.scientific_notation_elements
    - _number_pattern_re.search
    - <builtin>.isinstance
    - SPACE_CHARS_RE.search
    - babel.core.parse_locale
    - babel.numbers.get_currency_precision
    - <builtin>.len
    - babel.numbers.get_decimal_symbol
    - value.scaleb
    - <builtin>.int
    - babel.numbers.format_decimal
    - <builtin>.tuple
    - babel.numbers.get_decimal_quantum
    - os.path.splitext
    - babel.numbers.NumberPattern._format_frac
    - pattern.split
    - babel.core.get_locale_identifier
    - babel.numbers.NumberPattern._quantize_value
    - babel.numbers.parse_pattern.parse_precision
    - string.partition
    - babel.numbers.NumberPattern.compute_scale
    - babel.core.Locale.parse._try_load
    - value.quantize
    - value.is_infinite
    - parts.pop
    - string.replace
    - babel.core.Locale.parse
    - babel.numbers.parse_grouping
    - babel.localedata.exists
    - sep.join
    - locale_id.lower
    - babel.numbers.NumberPattern.apply
    - itertools.chain.from_iterable
    - exp.lstrip
    - os.path.dirname
    - <builtin>.bool
    - SPACE_CHARS_RE.sub
    - babel.numbers.get_infinity_symbol
    - warnings.warn
    - retval.replace
    - babel.localedata.resolve_locale_filename
    - <builtin>.max
    - babel.numbers._get_number_symbols
    - babel.numbers._get_numbering_system
    - value.adjusted
    - identifier.partition
    - babel.numbers._remove_trailing_zeros_after_decimal
    - babel.numbers.NumberPattern._format_significant
    - number.split
    - babel.numbers.NumberPattern.__init__
    - re.sub
    linkageType: pythonLinkage
    raised:
    - NumberFormatError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - string
    - decimal_symbol
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1236
    functionName: babel.numbers._remove_trailing_zeros_after_decimal
    functionSourceFile: babel.numbers
    functionUses: 1
    functionsReached:
    - decimal_part.rstrip
    - string.partition
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: string.partition
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: decimal_part.rstrip
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - p
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1278
    functionName: babel.numbers.parse_grouping
    functionSourceFile: babel.numbers
    functionUses: 20
    functionsReached:
    - <builtin>.len
    - p.rfind
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: p.rfind
    functionSourceFile: <builtin>
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - pattern
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1305
    functionName: babel.numbers.parse_pattern._match_number
    functionSourceFile: babel.numbers
    functionUses: 20
    functionsReached:
    - _number_pattern_re.search
    - rv.groups
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _number_pattern_re.search
    functionSourceFile: <builtin>
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rv.groups
    functionSourceFile: <builtin>
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pattern.split
    functionSourceFile: <builtin>
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: number.split
    functionSourceFile: <builtin>
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: number.rsplit
    functionSourceFile: <builtin>
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - p
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1334
    functionName: babel.numbers.parse_pattern.parse_precision
    functionSourceFile: babel.numbers
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: exp.startswith
    functionSourceFile: <builtin>
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: exp.lstrip
    functionSourceFile: <builtin>
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 10
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e5346d0>
    argNames:
    - self
    - pattern
    - prefix
    - suffix
    - grouping
    - int_prec
    - frac_prec
    - exp_prec
    - exp_plus
    - number_pattern
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1373
    functionName: babel.numbers.NumberPattern.__init__
    functionSourceFile: babel.numbers
    functionUses: 20
    functionsReached:
    - babel.numbers.NumberPattern.compute_scale
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1400
    functionName: babel.numbers.NumberPattern.compute_scale
    functionSourceFile: ''
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1397
    functionName: babel.numbers.NumberPattern.__repr__
    functionSourceFile: babel.numbers
    functionUses: 0
    functionsReached:
    - <builtin>.type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - value
    - locale
    - numbering_system
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1414
    functionName: babel.numbers.NumberPattern.scientific_notation_elements
    functionSourceFile: babel.numbers
    functionUses: 19
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.numbers.get_plus_sign_symbol
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - babel.numbers.get_decimal_quantum
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - <builtin>.abs
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - babel.numbers.get_minus_sign_symbol
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - decimal.Decimal
    - babel.localedata.resolve_locale_filename
    - <builtin>.max
    - value.adjusted
    - babel.numbers._get_number_symbols
    - babel.numbers._get_numbering_system
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: value.adjusted
    functionSourceFile: <builtin>
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: value.scaleb
    functionSourceFile: <builtin>
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: value.is_signed
    functionSourceFile: <builtin>
    functionUses: 19
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - value
    - minimum
    - maximum
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1594
    functionName: babel.numbers.NumberPattern._format_significant
    functionSourceFile: babel.numbers
    functionUses: 19
    functionsReached:
    - <builtin>.min
    - <builtin>.str
    - value.adjusted
    - <builtin>.max
    - <builtin>.len
    - value.scaleb
    - decimal.Decimal
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: text.partition
    functionSourceFile: <builtin>
    functionUses: 19
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - value
    - min
    - max
    - locale
    - numbering_system
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1613
    functionName: babel.numbers.NumberPattern._format_int
    functionSourceFile: babel.numbers
    functionUses: 20
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.numbers.get_group_symbol
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - babel.numbers._get_numbering_system
    - babel.numbers._get_number_symbols
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - value
    - locale
    - frac_prec
    - group_separator
    - numbering_system
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1634
    functionName: babel.numbers.NumberPattern._quantize_value
    functionSourceFile: babel.numbers
    functionUses: 19
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - babel.numbers.get_decimal_quantum
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - babel.numbers.NumberPattern._format_frac
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.numbers.get_group_symbol
    - babel.numbers.get_infinity_symbol
    - babel.core.parse_locale
    - babel.numbers.NumberPattern._format_int
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - value.quantize
    - babel.numbers.get_decimal_symbol
    - <builtin>.int
    - decimal.Decimal
    - babel.localedata.resolve_locale_filename
    - babel.numbers._get_number_symbols
    - babel.numbers._get_numbering_system
    - identifier.partition
    - value.is_infinite
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: retval.replace
    functionSourceFile: <builtin>
    functionUses: 19
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: babel.numbers.NumberPattern.apply.<lambda1>
    functionSourceFile: babel.numbers
    functionUses: 0
    functionsReached:
    - m.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.min
    functionSourceFile: <builtin>
    functionUses: 24
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: value.is_infinite
    functionSourceFile: <builtin>
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: value.quantize
    functionSourceFile: <builtin>
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e6ed640>
    argNames:
    - self
    - value
    - locale
    - force_frac
    - numbering_system
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1666
    functionName: babel.numbers.NumberPattern._format_frac
    functionSourceFile: babel.numbers
    functionUses: 20
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.numbers.get_decimal_symbol
    - <builtin>.int
    - babel.localedata.resolve_locale_filename
    - babel.numbers._get_number_symbols
    - babel.numbers._get_numbering_system
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: babel.support
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e1a8f10>
    argNames:
    - self
    - locale
    - tzinfo
    - numbering_system
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 53
    functionName: babel.support.Format.__init__
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e169460>
    - <ast.Constant object at 0x7f1b4e169fd0>
    argNames:
    - self
    - date
    - format
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 71
    functionName: babel.support.Format.date
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - babel.dates.tokenize_pattern.append_field
    - lang.isalpha
    - babel.core.get_global
    - babel.dates.DateTimePattern.apply
    - quotebuf.append
    - sep.join
    - os.path.basename
    - value.replace
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - result.append
    - itertools.chain.from_iterable
    - babel.dates.get_date_format
    - date.date
    - babel.core.get_locale_identifier
    - babel.dates.format_date
    - tok_value.replace
    - babel.dates.tokenize_pattern.append_chars
    - os.path.dirname
    - babel.dates.DateTimeFormat.__init__
    - <builtin>.isinstance
    - pattern.replace
    - <builtin>.bool
    - babel.dates.DateTimePattern.__init__
    - charbuf.extend
    - charbuf.append
    - babel.core.parse_locale
    - babel.dates.parse_pattern
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - babel.dates._cached_parse_pattern
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.dates.tokenize_pattern
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    - datetime.date.today
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e169430>
    - <ast.Constant object at 0x7f1b4e169c70>
    argNames:
    - self
    - datetime
    - format
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 85
    functionName: babel.support.Format.datetime
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - babel.dates.tokenize_pattern.append_field
    - babel.dates._get_time
    - lang.isalpha
    - babel.dates.DateTimePattern.apply
    - quotebuf.append
    - babel.core.get_global
    - sep.join
    - value.replace
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - babel.dates._ensure_datetime_tzinfo
    - datetime.datetime.combine
    - <builtin>.filter
    - babel.dates._get_datetime
    - time.replace
    - babel.core.Locale.parse._try_load_reducing
    - babel.dates.get_timezone
    - os.path.splitext
    - os.path.join
    - datetime.time
    - result.append
    - <builtin>.str
    - itertools.chain.from_iterable
    - dt.replace
    - date.date
    - babel.dates.get_date_format
    - babel.dates.get_datetime_format
    - babel.core.get_locale_identifier
    - <builtin>.hasattr
    - babel.dates.format_date
    - time.timetz
    - tok_value.replace
    - babel.dates.tokenize_pattern.append_chars
    - os.path.dirname
    - babel.dates.DateTimeFormat.__init__
    - <builtin>.isinstance
    - pattern.replace
    - <builtin>.bool
    - zoneinfo.ZoneInfo
    - babel.dates.DateTimePattern.__init__
    - tzinfo.normalize
    - charbuf.extend
    - charbuf.append
    - babel.core.parse_locale
    - babel.dates.parse_pattern
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - time.astimezone
    - <builtin>.len
    - pytz.timezone
    - babel.dates.get_time_format
    - time.date
    - babel.dates._cached_parse_pattern
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.dates.tokenize_pattern
    - babel.localedata.normalize_locale
    - dt.astimezone
    - name.strip
    - parts.pop
    - <builtin>.tuple
    - identifier.split
    - babel.dates.format_time
    - datetime.date.today
    - _windows_reserved_name_re.match
    - babel.dates.format_datetime
    - datetime.datetime.fromtimestamp
    - babel.core.Locale.parse
    - datetime.datetime.now
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e2e2190>
    - <ast.Constant object at 0x7f1b4e2e2610>
    argNames:
    - self
    - time
    - format
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 100
    functionName: babel.support.Format.time
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - babel.dates.tokenize_pattern.append_field
    - babel.dates._get_time
    - lang.isalpha
    - babel.dates.DateTimePattern.apply
    - quotebuf.append
    - babel.core.get_global
    - sep.join
    - value.replace
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - time.replace
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - result.append
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - <builtin>.hasattr
    - time.timetz
    - tok_value.replace
    - babel.dates.tokenize_pattern.append_chars
    - os.path.dirname
    - babel.dates.DateTimeFormat.__init__
    - <builtin>.isinstance
    - pattern.replace
    - <builtin>.bool
    - babel.dates.DateTimePattern.__init__
    - tzinfo.normalize
    - charbuf.extend
    - charbuf.append
    - babel.core.parse_locale
    - babel.dates.parse_pattern
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - time.astimezone
    - <builtin>.len
    - babel.dates.get_time_format
    - babel.dates._cached_parse_pattern
    - time.date
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.dates.tokenize_pattern
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - babel.dates.format_time
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - datetime.datetime.fromtimestamp
    - babel.core.Locale.parse
    - datetime.datetime.now
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e2e2fa0>
    - <ast.Constant object at 0x7f1b4e2e2e80>
    - <ast.Constant object at 0x7f1b4e2e2b20>
    - <ast.Constant object at 0x7f1b4e2e2460>
    argNames:
    - self
    - delta
    - granularity
    - threshold
    - format
    - add_direction
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 115
    functionName: babel.support.Format.timedelta
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - unit_patterns.get
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - <builtin>.abs
    - patterns.get
    - <builtin>.str
    - os.path.join
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - <builtin>.round
    - os.path.dirname
    - <builtin>.isinstance
    - pattern.replace
    - <builtin>.bool
    - babel.core.Locale.plural_form
    - babel.core.parse_locale
    - warnings.warn
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - <builtin>.int
    - babel.dates.format_timedelta
    - babel.localedata.resolve_locale_filename
    - <builtin>.max
    - date_fields.get
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - unit_pats.get
    - identifier.split
    - babel.dates.format_timedelta._iter_patterns
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - number
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 147
    functionName: babel.support.Format.number
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - pickle.load
    - lang.isalpha
    - babel.numbers.get_currency_symbol
    - exp.startswith
    - <builtin>.filter
    - number.rsplit
    - babel.core.Locale.parse._try_load_reducing
    - <builtin>.abs
    - text.partition
    - babel.numbers.get_minus_sign_symbol
    - babel.numbers.get_group_symbol
    - rv.groups
    - <builtin>.min
    - babel.core.Locale.plural_form
    - p.rfind
    - babel.numbers.NumberPattern._format_int
    - babel.core.Locale.__init__
    - os.path.isfile
    - babel.numbers.get_currency_name
    - babel.numbers.parse_pattern
    - decimal.Decimal
    - babel.localedata.normalize_locale
    - babel.core._raise_no_data_error
    - name.strip
    - identifier.split
    - value.is_signed
    - _windows_reserved_name_re.match
    - <builtin>.open
    - currency.upper
    - babel.numbers.get_plus_sign_symbol
    - os.path.exists
    - babel.core.get_global
    - os.path.basename
    - _global_data.get
    - precisions.get
    - babel.numbers.parse_pattern._match_number
    - os.path.join
    - <builtin>.str
    - babel.numbers.NumberPattern.scientific_notation_elements
    - _number_pattern_re.search
    - <builtin>.isinstance
    - babel.core.parse_locale
    - babel.numbers.get_currency_precision
    - <builtin>.len
    - babel.numbers.get_decimal_symbol
    - value.scaleb
    - <builtin>.int
    - babel.numbers.format_decimal
    - <builtin>.tuple
    - babel.numbers.get_decimal_quantum
    - os.path.splitext
    - babel.numbers.NumberPattern._format_frac
    - pattern.split
    - babel.core.get_locale_identifier
    - babel.numbers.NumberPattern._quantize_value
    - babel.numbers.parse_pattern.parse_precision
    - babel.numbers.NumberPattern.compute_scale
    - babel.core.Locale.parse._try_load
    - value.quantize
    - value.is_infinite
    - parts.pop
    - babel.core.Locale.parse
    - babel.localedata.exists
    - babel.numbers.parse_grouping
    - sep.join
    - locale_id.lower
    - babel.numbers.NumberPattern.apply
    - itertools.chain.from_iterable
    - exp.lstrip
    - os.path.dirname
    - <builtin>.bool
    - babel.numbers.get_infinity_symbol
    - warnings.warn
    - retval.replace
    - babel.localedata.resolve_locale_filename
    - <builtin>.max
    - babel.numbers._get_number_symbols
    - identifier.partition
    - babel.numbers._get_numbering_system
    - value.adjusted
    - babel.numbers.NumberPattern._format_significant
    - number.split
    - babel.numbers.NumberPattern.__init__
    - re.sub
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4ee3ea90>
    argNames:
    - self
    - number
    - format
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 160
    functionName: babel.support.Format.decimal
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - pickle.load
    - lang.isalpha
    - babel.numbers.get_currency_symbol
    - exp.startswith
    - <builtin>.filter
    - number.rsplit
    - babel.core.Locale.parse._try_load_reducing
    - <builtin>.abs
    - text.partition
    - babel.numbers.get_minus_sign_symbol
    - babel.numbers.get_group_symbol
    - rv.groups
    - <builtin>.min
    - babel.core.Locale.plural_form
    - p.rfind
    - babel.numbers.NumberPattern._format_int
    - babel.core.Locale.__init__
    - os.path.isfile
    - babel.numbers.get_currency_name
    - babel.numbers.parse_pattern
    - decimal.Decimal
    - babel.localedata.normalize_locale
    - babel.core._raise_no_data_error
    - name.strip
    - identifier.split
    - value.is_signed
    - _windows_reserved_name_re.match
    - <builtin>.open
    - currency.upper
    - babel.numbers.get_plus_sign_symbol
    - os.path.exists
    - babel.core.get_global
    - os.path.basename
    - _global_data.get
    - precisions.get
    - babel.numbers.parse_pattern._match_number
    - os.path.join
    - <builtin>.str
    - babel.numbers.NumberPattern.scientific_notation_elements
    - _number_pattern_re.search
    - <builtin>.isinstance
    - babel.core.parse_locale
    - babel.numbers.get_currency_precision
    - <builtin>.len
    - babel.numbers.get_decimal_symbol
    - value.scaleb
    - <builtin>.int
    - babel.numbers.format_decimal
    - <builtin>.tuple
    - babel.numbers.get_decimal_quantum
    - os.path.splitext
    - babel.numbers.NumberPattern._format_frac
    - pattern.split
    - babel.core.get_locale_identifier
    - babel.numbers.NumberPattern._quantize_value
    - babel.numbers.parse_pattern.parse_precision
    - babel.numbers.NumberPattern.compute_scale
    - babel.core.Locale.parse._try_load
    - value.quantize
    - value.is_infinite
    - parts.pop
    - babel.core.Locale.parse
    - babel.localedata.exists
    - babel.numbers.parse_grouping
    - sep.join
    - locale_id.lower
    - babel.numbers.NumberPattern.apply
    - itertools.chain.from_iterable
    - exp.lstrip
    - os.path.dirname
    - <builtin>.bool
    - babel.numbers.get_infinity_symbol
    - warnings.warn
    - retval.replace
    - babel.localedata.resolve_locale_filename
    - <builtin>.max
    - babel.numbers._get_number_symbols
    - identifier.partition
    - babel.numbers._get_numbering_system
    - value.adjusted
    - babel.numbers.NumberPattern._format_significant
    - number.split
    - babel.numbers.NumberPattern.__init__
    - re.sub
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4ee3ec40>
    - <ast.Constant object at 0x7f1b4ee3e460>
    argNames:
    - self
    - number
    - format_type
    - fraction_digits
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 174
    functionName: babel.support.Format.compact_decimal
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - pickle.load
    - lang.isalpha
    - babel.numbers.get_currency_symbol
    - exp.startswith
    - <builtin>.filter
    - number.rsplit
    - babel.core.Locale.parse._try_load_reducing
    - <builtin>.abs
    - text.partition
    - babel.numbers.get_minus_sign_symbol
    - babel.numbers.get_group_symbol
    - rv.groups
    - <builtin>.min
    - babel.core.Locale.plural_form
    - p.rfind
    - babel.numbers.NumberPattern._format_int
    - babel.core.Locale.__init__
    - os.path.isfile
    - babel.numbers.get_currency_name
    - typing.cast
    - babel.numbers.parse_pattern
    - decimal.Decimal
    - babel.localedata.normalize_locale
    - babel.core._raise_no_data_error
    - name.strip
    - identifier.split
    - value.is_signed
    - _windows_reserved_name_re.match
    - <builtin>.open
    - currency.upper
    - babel.numbers.get_plus_sign_symbol
    - os.path.exists
    - babel.core.get_global
    - os.path.basename
    - _global_data.get
    - precisions.get
    - babel.numbers.parse_pattern._match_number
    - os.path.join
    - <builtin>.str
    - babel.numbers.NumberPattern.scientific_notation_elements
    - <builtin>.round
    - _number_pattern_re.search
    - <builtin>.isinstance
    - babel.numbers._get_compact_format
    - babel.core.parse_locale
    - babel.numbers.get_currency_precision
    - <builtin>.len
    - babel.numbers.get_decimal_symbol
    - <builtin>.int
    - value.scaleb
    - <builtin>.tuple
    - babel.numbers.format_compact_decimal
    - babel.numbers.get_decimal_quantum
    - os.path.splitext
    - babel.numbers.NumberPattern._format_frac
    - pattern.split
    - babel.core.get_locale_identifier
    - babel.numbers.NumberPattern._quantize_value
    - babel.numbers.parse_pattern.parse_precision
    - babel.numbers.NumberPattern.compute_scale
    - babel.core.Locale.parse._try_load
    - value.quantize
    - <builtin>.sorted
    - value.is_infinite
    - parts.pop
    - typing.cast.is_infinite
    - babel.core.Locale.parse
    - babel.numbers.parse_grouping
    - babel.localedata.exists
    - sep.join
    - locale_id.lower
    - babel.numbers.NumberPattern.apply
    - itertools.chain.from_iterable
    - pattern.count
    - exp.lstrip
    - os.path.dirname
    - <builtin>.bool
    - babel.numbers.get_infinity_symbol
    - warnings.warn
    - typing.cast.is_nan
    - retval.replace
    - babel.localedata.resolve_locale_filename
    - <builtin>.max
    - babel.numbers._get_number_symbols
    - babel.numbers._get_numbering_system
    - value.adjusted
    - identifier.partition
    - babel.numbers.NumberPattern._format_significant
    - number.split
    - babel.numbers.NumberPattern.__init__
    - re.sub
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - number
    - currency
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 196
    functionName: babel.support.Format.currency
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - pickle.load
    - lang.isalpha
    - babel.numbers.get_currency_symbol
    - exp.startswith
    - <builtin>.filter
    - number.rsplit
    - babel.core.Locale.parse._try_load_reducing
    - <builtin>.abs
    - text.partition
    - babel.numbers.get_minus_sign_symbol
    - babel.numbers.get_group_symbol
    - rv.groups
    - <builtin>.min
    - babel.core.Locale.plural_form
    - p.rfind
    - babel.numbers.NumberPattern._format_int
    - babel.core.Locale.__init__
    - os.path.isfile
    - babel.numbers.get_currency_name
    - babel.numbers.parse_pattern
    - decimal.Decimal
    - babel.localedata.normalize_locale
    - babel.core._raise_no_data_error
    - name.strip
    - identifier.split
    - value.is_signed
    - _windows_reserved_name_re.match
    - <builtin>.open
    - currency.upper
    - babel.numbers.get_plus_sign_symbol
    - os.path.exists
    - babel.core.get_global
    - os.path.basename
    - _global_data.get
    - precisions.get
    - babel.numbers.parse_pattern._match_number
    - os.path.join
    - <builtin>.str
    - babel.numbers.NumberPattern.scientific_notation_elements
    - <builtin>.float
    - _number_pattern_re.search
    - <builtin>.isinstance
    - babel.core.parse_locale
    - babel.numbers.get_currency_precision
    - <builtin>.len
    - babel.numbers.get_decimal_symbol
    - value.scaleb
    - <builtin>.int
    - unit_pattern.format
    - <builtin>.tuple
    - babel.numbers._format_currency_long_name
    - babel.numbers.format_currency
    - babel.numbers.get_decimal_quantum
    - os.path.splitext
    - babel.numbers.NumberPattern._format_frac
    - pattern.split
    - babel.core.get_locale_identifier
    - babel.numbers.NumberPattern._quantize_value
    - babel.numbers.parse_pattern.parse_precision
    - babel.numbers.NumberPattern.compute_scale
    - babel.numbers.get_currency_unit_pattern
    - babel.core.Locale.parse._try_load
    - value.quantize
    - value.is_infinite
    - parts.pop
    - babel.core.Locale.parse
    - babel.localedata.exists
    - babel.numbers.parse_grouping
    - sep.join
    - locale_id.lower
    - babel.numbers.NumberPattern.apply
    - itertools.chain.from_iterable
    - exp.lstrip
    - os.path.dirname
    - <builtin>.bool
    - babel.numbers.get_infinity_symbol
    - warnings.warn
    - retval.replace
    - babel.localedata.resolve_locale_filename
    - <builtin>.max
    - babel.numbers._get_number_symbols
    - identifier.partition
    - babel.numbers._get_numbering_system
    - value.adjusted
    - babel.numbers.NumberPattern._format_significant
    - number.split
    - babel.numbers.NumberPattern.__init__
    - re.sub
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e70cfd0>
    - <ast.Constant object at 0x7f1b4e70c850>
    argNames:
    - self
    - number
    - currency
    - format_type
    - fraction_digits
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 205
    functionName: babel.support.Format.compact_currency
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - pickle.load
    - lang.isalpha
    - babel.numbers.get_currency_symbol
    - exp.startswith
    - <builtin>.filter
    - number.rsplit
    - babel.core.Locale.parse._try_load_reducing
    - <builtin>.abs
    - text.partition
    - babel.numbers.get_minus_sign_symbol
    - babel.numbers.get_group_symbol
    - rv.groups
    - <builtin>.min
    - babel.core.Locale.plural_form
    - p.rfind
    - babel.numbers.NumberPattern._format_int
    - babel.core.Locale.__init__
    - os.path.isfile
    - babel.numbers.get_currency_name
    - typing.cast
    - babel.numbers.parse_pattern
    - decimal.Decimal
    - babel.localedata.normalize_locale
    - babel.core._raise_no_data_error
    - name.strip
    - identifier.split
    - value.is_signed
    - _windows_reserved_name_re.match
    - <builtin>.open
    - currency.upper
    - babel.numbers.get_plus_sign_symbol
    - os.path.exists
    - babel.core.get_global
    - os.path.basename
    - _global_data.get
    - precisions.get
    - babel.numbers.parse_pattern._match_number
    - os.path.join
    - <builtin>.str
    - babel.numbers.NumberPattern.scientific_notation_elements
    - <builtin>.round
    - _number_pattern_re.search
    - <builtin>.isinstance
    - babel.numbers._get_compact_format
    - babel.core.parse_locale
    - babel.numbers.get_currency_precision
    - <builtin>.len
    - babel.numbers.get_decimal_symbol
    - <builtin>.int
    - value.scaleb
    - <builtin>.tuple
    - babel.numbers.get_decimal_quantum
    - os.path.splitext
    - babel.numbers.NumberPattern._format_frac
    - pattern.split
    - babel.core.get_locale_identifier
    - babel.numbers.NumberPattern._quantize_value
    - babel.numbers.parse_pattern.parse_precision
    - babel.numbers.NumberPattern.compute_scale
    - babel.core.Locale.parse._try_load
    - value.quantize
    - <builtin>.sorted
    - value.is_infinite
    - parts.pop
    - typing.cast.is_infinite
    - babel.core.Locale.parse
    - babel.localedata.exists
    - babel.numbers.parse_grouping
    - sep.join
    - locale_id.lower
    - babel.numbers.NumberPattern.apply
    - itertools.chain.from_iterable
    - pattern.count
    - exp.lstrip
    - os.path.dirname
    - <builtin>.bool
    - babel.numbers.get_infinity_symbol
    - babel.numbers.format_compact_currency
    - warnings.warn
    - typing.cast.is_nan
    - retval.replace
    - babel.localedata.resolve_locale_filename
    - <builtin>.max
    - value.adjusted
    - babel.numbers._get_number_symbols
    - babel.numbers._get_numbering_system
    - identifier.partition
    - babel.numbers.NumberPattern._format_significant
    - number.split
    - babel.numbers.NumberPattern.__init__
    - re.sub
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e4612e0>
    argNames:
    - self
    - number
    - format
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 227
    functionName: babel.support.Format.percent
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - pickle.load
    - lang.isalpha
    - babel.numbers.get_currency_symbol
    - exp.startswith
    - <builtin>.filter
    - number.rsplit
    - babel.core.Locale.parse._try_load_reducing
    - <builtin>.abs
    - text.partition
    - babel.numbers.get_minus_sign_symbol
    - babel.numbers.get_group_symbol
    - rv.groups
    - <builtin>.min
    - babel.core.Locale.plural_form
    - p.rfind
    - babel.numbers.NumberPattern._format_int
    - babel.core.Locale.__init__
    - os.path.isfile
    - babel.numbers.get_currency_name
    - babel.numbers.parse_pattern
    - decimal.Decimal
    - babel.localedata.normalize_locale
    - babel.core._raise_no_data_error
    - name.strip
    - identifier.split
    - value.is_signed
    - _windows_reserved_name_re.match
    - <builtin>.open
    - currency.upper
    - babel.numbers.get_plus_sign_symbol
    - os.path.exists
    - babel.core.get_global
    - os.path.basename
    - _global_data.get
    - precisions.get
    - babel.numbers.parse_pattern._match_number
    - os.path.join
    - <builtin>.str
    - babel.numbers.NumberPattern.scientific_notation_elements
    - _number_pattern_re.search
    - <builtin>.isinstance
    - babel.core.parse_locale
    - babel.numbers.get_currency_precision
    - <builtin>.len
    - babel.numbers.get_decimal_symbol
    - value.scaleb
    - <builtin>.int
    - <builtin>.tuple
    - babel.numbers.get_decimal_quantum
    - os.path.splitext
    - babel.numbers.NumberPattern._format_frac
    - pattern.split
    - babel.core.get_locale_identifier
    - babel.numbers.NumberPattern._quantize_value
    - babel.numbers.parse_pattern.parse_precision
    - babel.numbers.NumberPattern.compute_scale
    - babel.core.Locale.parse._try_load
    - value.quantize
    - value.is_infinite
    - parts.pop
    - babel.core.Locale.parse
    - babel.localedata.exists
    - babel.numbers.parse_grouping
    - sep.join
    - locale_id.lower
    - babel.numbers.NumberPattern.apply
    - babel.numbers.format_percent
    - itertools.chain.from_iterable
    - exp.lstrip
    - os.path.dirname
    - <builtin>.bool
    - babel.numbers.get_infinity_symbol
    - warnings.warn
    - retval.replace
    - babel.localedata.resolve_locale_filename
    - <builtin>.max
    - babel.numbers._get_number_symbols
    - identifier.partition
    - babel.numbers._get_numbering_system
    - value.adjusted
    - babel.numbers.NumberPattern._format_significant
    - number.split
    - babel.numbers.NumberPattern.__init__
    - re.sub
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - number
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 241
    functionName: babel.support.Format.scientific
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - pickle.load
    - lang.isalpha
    - babel.numbers.get_currency_symbol
    - exp.startswith
    - <builtin>.filter
    - number.rsplit
    - babel.core.Locale.parse._try_load_reducing
    - <builtin>.abs
    - text.partition
    - babel.numbers.get_minus_sign_symbol
    - babel.numbers.get_group_symbol
    - rv.groups
    - <builtin>.min
    - babel.core.Locale.plural_form
    - p.rfind
    - babel.numbers.NumberPattern._format_int
    - babel.core.Locale.__init__
    - os.path.isfile
    - babel.numbers.get_currency_name
    - babel.numbers.parse_pattern
    - decimal.Decimal
    - babel.localedata.normalize_locale
    - babel.core._raise_no_data_error
    - name.strip
    - identifier.split
    - value.is_signed
    - _windows_reserved_name_re.match
    - <builtin>.open
    - currency.upper
    - babel.numbers.get_plus_sign_symbol
    - os.path.exists
    - babel.core.get_global
    - os.path.basename
    - _global_data.get
    - precisions.get
    - babel.numbers.parse_pattern._match_number
    - os.path.join
    - <builtin>.str
    - babel.numbers.NumberPattern.scientific_notation_elements
    - _number_pattern_re.search
    - <builtin>.isinstance
    - babel.core.parse_locale
    - babel.numbers.format_scientific
    - babel.numbers.get_currency_precision
    - <builtin>.len
    - babel.numbers.get_decimal_symbol
    - value.scaleb
    - <builtin>.int
    - <builtin>.tuple
    - babel.numbers.get_decimal_quantum
    - os.path.splitext
    - babel.numbers.NumberPattern._format_frac
    - pattern.split
    - babel.core.get_locale_identifier
    - babel.numbers.NumberPattern._quantize_value
    - babel.numbers.parse_pattern.parse_precision
    - babel.numbers.NumberPattern.compute_scale
    - babel.core.Locale.parse._try_load
    - value.quantize
    - value.is_infinite
    - parts.pop
    - babel.core.Locale.parse
    - babel.localedata.exists
    - babel.numbers.parse_grouping
    - sep.join
    - locale_id.lower
    - babel.numbers.NumberPattern.apply
    - itertools.chain.from_iterable
    - exp.lstrip
    - os.path.dirname
    - <builtin>.bool
    - babel.numbers.get_infinity_symbol
    - warnings.warn
    - retval.replace
    - babel.localedata.resolve_locale_filename
    - <builtin>.max
    - babel.numbers._get_number_symbols
    - identifier.partition
    - babel.numbers._get_numbering_system
    - value.adjusted
    - babel.numbers.NumberPattern._format_significant
    - number.split
    - babel.numbers.NumberPattern.__init__
    - re.sub
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 6
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - func
    - args
    - enable_cache
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 303
    functionName: babel.support.LazyProxy.__init__
    functionSourceFile: babel.support
    functionUses: 2
    functionsReached:
    - object.__setattr__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: object.__setattr__
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 319
    functionName: babel.support.LazyProxy.value
    functionSourceFile: babel.support
    functionUses: 1
    functionsReached:
    - object.__setattr__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 332
    functionName: babel.support.LazyProxy.__contains__
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 335
    functionName: babel.support.LazyProxy.__bool__
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - <builtin>.bool
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 338
    functionName: babel.support.LazyProxy.__dir__
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - <builtin>.dir
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.dir
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 341
    functionName: babel.support.LazyProxy.__iter__
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - <builtin>.iter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 344
    functionName: babel.support.LazyProxy.__len__
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 347
    functionName: babel.support.LazyProxy.__str__
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 350
    functionName: babel.support.LazyProxy.__add__
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 353
    functionName: babel.support.LazyProxy.__radd__
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 356
    functionName: babel.support.LazyProxy.__mod__
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 359
    functionName: babel.support.LazyProxy.__rmod__
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 362
    functionName: babel.support.LazyProxy.__mul__
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 365
    functionName: babel.support.LazyProxy.__rmul__
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 368
    functionName: babel.support.LazyProxy.__call__
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - object.__setattr__
    - babel.support.LazyProxy.value
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 371
    functionName: babel.support.LazyProxy.__lt__
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 374
    functionName: babel.support.LazyProxy.__le__
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 377
    functionName: babel.support.LazyProxy.__eq__
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 380
    functionName: babel.support.LazyProxy.__ne__
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 383
    functionName: babel.support.LazyProxy.__gt__
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 386
    functionName: babel.support.LazyProxy.__ge__
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 389
    functionName: babel.support.LazyProxy.__delattr__
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - <builtin>.delattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.delattr
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 392
    functionName: babel.support.LazyProxy.__getattr__
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 397
    functionName: babel.support.LazyProxy.__setattr__
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - <builtin>.setattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.setattr
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 400
    functionName: babel.support.LazyProxy.__delitem__
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - key
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 403
    functionName: babel.support.LazyProxy.__getitem__
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - key
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 406
    functionName: babel.support.LazyProxy.__setitem__
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 409
    functionName: babel.support.LazyProxy.__copy__
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - babel.support.LazyProxy.__init__
    - object.__setattr__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - memo
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 417
    functionName: babel.support.LazyProxy.__deepcopy__
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - babel.support.LazyProxy.__init__
    - copy.deepcopy
    - object.__setattr__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: copy.deepcopy
    functionSourceFile: copy
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e8160d0>
    argNames:
    - self
    - fp
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 435
    functionName: babel.support.NullTranslations.__init__
    functionSourceFile: babel.support
    functionUses: 1
    functionsReached:
    - <builtin>.super
    - <builtin>.list
    - <builtin>.filter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: babel.support.NullTranslations.__init__.<lambda1>
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - <builtin>.int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - domain
    - message
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 452
    functionName: babel.support.NullTranslations.dgettext
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - babel.support.NullTranslations._domains.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: babel.support.NullTranslations._domains.get
    functionSourceFile: babel
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - domain
    - message
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 458
    functionName: babel.support.NullTranslations.ldgettext
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - warnings.warn
    - babel.support.NullTranslations._domains.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - domain
    - message
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 471
    functionName: babel.support.NullTranslations.udgettext
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - babel.support.NullTranslations._domains.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - domain
    - singular
    - plural
    - num
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 480
    functionName: babel.support.NullTranslations.dngettext
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - babel.support.NullTranslations._domains.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - domain
    - singular
    - plural
    - num
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 486
    functionName: babel.support.NullTranslations.ldngettext
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - warnings.warn
    - babel.support.NullTranslations._domains.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - domain
    - singular
    - plural
    - num
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 499
    functionName: babel.support.NullTranslations.udngettext
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - babel.support.NullTranslations._domains.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - context
    - message
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 515
    functionName: babel.support.NullTranslations.pgettext
    functionSourceFile: babel.support
    functionUses: 1
    functionsReached:
    - babel.support.NullTranslations._catalog.get
    - gettext.NullTranslations._fallback.pgettext
    - gettext.NullTranslations.plural
    - <builtin>.object
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: babel.support.NullTranslations._catalog.get
    functionSourceFile: babel
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gettext.NullTranslations.plural
    functionSourceFile: gettext
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gettext.NullTranslations._fallback.pgettext
    functionSourceFile: gettext
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - context
    - message
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 534
    functionName: babel.support.NullTranslations.lpgettext
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - warnings.warn
    - gettext.NullTranslations._fallback.pgettext
    - <builtin>.getattr
    - <builtin>.object
    - tmsg.encode
    - babel.support.NullTranslations._catalog.get
    - babel.support.NullTranslations.pgettext
    - gettext.NullTranslations.plural
    - <builtin>.isinstance
    - locale.getpreferredencoding
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: locale.getpreferredencoding
    functionSourceFile: locale
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tmsg.encode
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - context
    - singular
    - plural
    - num
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 550
    functionName: babel.support.NullTranslations.npgettext
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - gettext.NullTranslations.plural
    - gettext.NullTranslations._fallback.npgettext
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gettext.NullTranslations._fallback.npgettext
    functionSourceFile: gettext
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - context
    - singular
    - plural
    - num
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 573
    functionName: babel.support.NullTranslations.lnpgettext
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - warnings.warn
    - <builtin>.getattr
    - tmsg.encode
    - gettext.NullTranslations._fallback.lnpgettext
    - gettext.NullTranslations.plural
    - locale.getpreferredencoding
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gettext.NullTranslations._fallback.lnpgettext
    functionSourceFile: gettext
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - context
    - message
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 598
    functionName: babel.support.NullTranslations.upgettext
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - <builtin>.str
    - gettext.NullTranslations._fallback.upgettext
    - <builtin>.object
    - babel.support.NullTranslations._catalog.get
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gettext.NullTranslations._fallback.upgettext
    functionSourceFile: gettext
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - context
    - singular
    - plural
    - num
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 615
    functionName: babel.support.NullTranslations.unpgettext
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - <builtin>.str
    - gettext.NullTranslations.plural
    - gettext.NullTranslations._fallback.unpgettext
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gettext.NullTranslations._fallback.unpgettext
    functionSourceFile: gettext
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - domain
    - context
    - message
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 635
    functionName: babel.support.NullTranslations.dpgettext
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - babel.support.NullTranslations._domains.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - domain
    - context
    - message
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 641
    functionName: babel.support.NullTranslations.udpgettext
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - babel.support.NullTranslations._domains.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - domain
    - context
    - message
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 650
    functionName: babel.support.NullTranslations.ldpgettext
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - babel.support.NullTranslations._domains.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - domain
    - context
    - singular
    - plural
    - num
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 657
    functionName: babel.support.NullTranslations.dnpgettext
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - babel.support.NullTranslations._domains.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - domain
    - context
    - singular
    - plural
    - num
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 663
    functionName: babel.support.NullTranslations.udnpgettext
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - babel.support.NullTranslations._domains.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - domain
    - context
    - singular
    - plural
    - num
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 672
    functionName: babel.support.NullTranslations.ldnpgettext
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - babel.support.NullTranslations._domains.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4eeb1940>
    - <ast.Constant object at 0x7f1b4eeb10a0>
    argNames:
    - self
    - fp
    - domain
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 695
    functionName: babel.support.Translations.__init__
    functionSourceFile: babel.support
    functionUses: 1
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e767fa0>
    - <ast.Constant object at 0x7f1b4e767460>
    - <ast.Constant object at 0x7f1b4e767bb0>
    argNames:
    - cls
    - dirname
    - locales
    - domain
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 712
    functionName: babel.support.Translations.load
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - <builtin>.open
    - <builtin>.str
    - <builtin>.filter
    - <builtin>.list
    - gettext.find
    - babel.support.NullTranslations.__init__
    - <builtin>.isinstance
    - <builtin>.super
    - babel.support._locales_to_names
    - babel.support.Translations.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - locales
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 781
    functionName: babel.support._locales_to_names
    functionSourceFile: babel.support
    functionUses: 1
    functionsReached:
    - <builtin>.str
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gettext.find
    functionSourceFile: gettext
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 734
    functionName: babel.support.Translations.__repr__
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - babel.support.Translations._info.get
    - <builtin>.type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: babel.support.Translations._info.get
    functionSourceFile: babel
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e6f1b50>
    argNames:
    - self
    - translations
    - merge
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 738
    functionName: babel.support.Translations.add
    functionSourceFile: babel.support
    functionUses: 0
    functionsReached:
    - existing.merge
    - babel.support.Translations._domains.get
    - <builtin>.getattr
    - <builtin>.isinstance
    - babel.support.Translations.merge
    - gettext.NullTranslations._catalog.update
    - translations.add_fallback
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - translations
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 764
    functionName: babel.support.Translations.merge
    functionSourceFile: babel.support
    functionUses: 1
    functionsReached:
    - gettext.NullTranslations._catalog.update
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: babel.support.Translations._domains.get
    functionSourceFile: babel
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: existing.merge
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: translations.add_fallback
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: gettext.NullTranslations._catalog.update
    functionSourceFile: gettext
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: babel.units
    functionSourceFile: babel.units
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - unit
    - locale
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 11
    functionName: babel.units.UnknownUnitError.__init__
    functionSourceFile: babel.units
    functionUses: 0
    functionsReached:
    - ValueError.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ValueError.__init__
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e1504f0>
    - <ast.Constant object at 0x7f1b4e150070>
    argNames:
    - measurement_unit
    - length
    - locale
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 15
    functionName: babel.units.get_unit_name
    functionSourceFile: babel.units
    functionUses: 2
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.units._find_unit_pattern
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - unit_pattern.endswith
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - <builtin>.sorted
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised:
    - UnknownUnitError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e5341c0>
    argNames:
    - unit_id
    - locale
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 48
    functionName: babel.units._find_unit_pattern
    functionSourceFile: babel.units
    functionUses: 4
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - unit_pattern.endswith
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - <builtin>.sorted
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: unit_pattern.endswith
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e6f1e50>
    - <ast.Constant object at 0x7f1b4e6f1220>
    - <ast.Constant object at 0x7f1b4e6f1a60>
    argNames:
    - value
    - measurement_unit
    - length
    - format
    - locale
    - numbering_system
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 75
    functionName: babel.units.format_unit
    functionSourceFile: babel.units
    functionUses: 1
    functionsReached:
    - pickle.load
    - lang.isalpha
    - babel.units._find_unit_pattern
    - babel.numbers.get_currency_symbol
    - exp.startswith
    - <builtin>.filter
    - number.rsplit
    - babel.core.Locale.parse._try_load_reducing
    - <builtin>.abs
    - text.partition
    - babel.numbers.get_minus_sign_symbol
    - babel.numbers.get_group_symbol
    - rv.groups
    - <builtin>.min
    - babel.core.Locale.plural_form
    - p.rfind
    - unit_pattern.endswith
    - babel.numbers.NumberPattern._format_int
    - babel.core.Locale.__init__
    - os.path.isfile
    - babel.numbers.get_currency_name
    - babel.numbers.parse_pattern
    - decimal.Decimal
    - babel.localedata.normalize_locale
    - babel.core._raise_no_data_error
    - name.strip
    - identifier.split
    - value.is_signed
    - _windows_reserved_name_re.match
    - <builtin>.open
    - currency.upper
    - babel.numbers.get_plus_sign_symbol
    - os.path.exists
    - babel.core.get_global
    - os.path.basename
    - _global_data.get
    - precisions.get
    - babel.numbers.parse_pattern._match_number
    - os.path.join
    - <builtin>.str
    - babel.numbers.NumberPattern.scientific_notation_elements
    - _number_pattern_re.search
    - <builtin>.isinstance
    - babel.core.parse_locale
    - babel.numbers.get_currency_precision
    - <builtin>.len
    - babel.numbers.get_decimal_symbol
    - value.scaleb
    - <builtin>.int
    - babel.numbers.format_decimal
    - <builtin>.tuple
    - babel.numbers.get_decimal_quantum
    - os.path.splitext
    - babel.numbers.NumberPattern._format_frac
    - pattern.split
    - babel.core.get_locale_identifier
    - babel.numbers.NumberPattern._quantize_value
    - babel.numbers.parse_pattern.parse_precision
    - babel.numbers.NumberPattern.compute_scale
    - babel.core.Locale.parse._try_load
    - value.quantize
    - <builtin>.sorted
    - value.is_infinite
    - parts.pop
    - babel.core.Locale.parse
    - babel.localedata.exists
    - babel.numbers.parse_grouping
    - sep.join
    - locale_id.lower
    - babel.numbers.NumberPattern.apply
    - itertools.chain.from_iterable
    - babel.units.get_unit_name
    - exp.lstrip
    - os.path.dirname
    - <builtin>.bool
    - babel.numbers.get_infinity_symbol
    - warnings.warn
    - retval.replace
    - babel.localedata.resolve_locale_filename
    - <builtin>.max
    - babel.numbers._get_number_symbols
    - identifier.partition
    - babel.numbers._get_numbering_system
    - value.adjusted
    - babel.numbers.NumberPattern._format_significant
    - number.split
    - babel.numbers.NumberPattern.__init__
    - re.sub
    linkageType: pythonLinkage
    raised:
    - UnknownUnitError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e465310>
    argNames:
    - numerator_unit
    - denominator_unit
    - locale
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 167
    functionName: babel.units._find_compound_unit
    functionSourceFile: babel.units
    functionUses: 1
    functionsReached:
    - pickle.load
    - resolved_numerator_unit.split
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.units._find_unit_pattern
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - resolved_denominator_unit.split
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - unit_pattern.endswith
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - <builtin>.sorted
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: resolved_numerator_unit.split
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: resolved_denominator_unit.split
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 1
    IfCount: 8
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e644070>
    - <ast.Constant object at 0x7f1b4e644e50>
    - <ast.Constant object at 0x7f1b4e644af0>
    - <ast.Constant object at 0x7f1b4e644eb0>
    - <ast.Constant object at 0x7f1b4e6449d0>
    - <ast.Constant object at 0x7f1b4e644610>
    argNames:
    - numerator_value
    - numerator_unit
    - denominator_value
    - denominator_unit
    - length
    - format
    - locale
    - numbering_system
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 222
    functionName: babel.units.format_compound_unit
    functionSourceFile: babel.units
    functionUses: 0
    functionsReached:
    - pickle.load
    - lang.isalpha
    - babel.units._find_unit_pattern
    - babel.numbers.get_currency_symbol
    - exp.startswith
    - <builtin>.filter
    - number.rsplit
    - babel.core.Locale.parse._try_load_reducing
    - <builtin>.abs
    - text.partition
    - babel.numbers.get_minus_sign_symbol
    - babel.numbers.get_group_symbol
    - rv.groups
    - <builtin>.min
    - babel.core.Locale.plural_form
    - p.rfind
    - unit_pattern.endswith
    - babel.numbers.NumberPattern._format_int
    - babel.core.Locale.__init__
    - os.path.isfile
    - babel.numbers.get_currency_name
    - babel.numbers.parse_pattern
    - decimal.Decimal
    - babel.localedata.normalize_locale
    - babel.core._raise_no_data_error
    - name.strip
    - identifier.split
    - value.is_signed
    - _windows_reserved_name_re.match
    - <builtin>.open
    - currency.upper
    - babel.numbers.get_plus_sign_symbol
    - os.path.exists
    - babel.core.get_global
    - os.path.basename
    - resolved_denominator_unit.split
    - _global_data.get
    - precisions.get
    - babel.units._find_compound_unit
    - babel.numbers.parse_pattern._match_number
    - os.path.join
    - <builtin>.str
    - babel.numbers.NumberPattern.scientific_notation_elements
    - _number_pattern_re.search
    - <builtin>.isinstance
    - babel.core.parse_locale
    - babel.numbers.get_currency_precision
    - <builtin>.len
    - babel.numbers.get_decimal_symbol
    - value.scaleb
    - <builtin>.int
    - babel.numbers.format_decimal
    - <builtin>.tuple
    - babel.units.format_unit
    - babel.numbers.get_decimal_quantum
    - os.path.splitext
    - babel.numbers.NumberPattern._format_frac
    - pattern.split
    - babel.core.get_locale_identifier
    - babel.numbers.NumberPattern._quantize_value
    - babel.numbers.parse_pattern.parse_precision
    - babel.numbers.NumberPattern.compute_scale
    - babel.core.Locale.parse._try_load
    - value.quantize
    - <builtin>.sorted
    - value.is_infinite
    - parts.pop
    - babel.core.Locale.parse
    - resolved_numerator_unit.split
    - babel.numbers.parse_grouping
    - babel.localedata.exists
    - sep.join
    - locale_id.lower
    - babel.numbers.NumberPattern.apply
    - itertools.chain.from_iterable
    - babel.units.get_unit_name
    - exp.lstrip
    - os.path.dirname
    - <builtin>.bool
    - babel.numbers.get_infinity_symbol
    - warnings.warn
    - per_pattern.format
    - retval.replace
    - babel.localedata.resolve_locale_filename
    - <builtin>.max
    - babel.numbers._get_number_symbols
    - babel.numbers._get_numbering_system
    - value.adjusted
    - identifier.partition
    - babel.numbers.NumberPattern._format_significant
    - number.split
    - babel.numbers.NumberPattern.__init__
    - re.sub
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: per_pattern.format
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: babel.messages.setuptools_frontend
    functionSourceFile: babel.messages.setuptools_frontend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - dist
    - name
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 19
    functionName: babel.messages.setuptools_frontend.check_message_extractors
    functionSourceFile: babel.messages.setuptools_frontend
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - SetupError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: -1
    functionName: babel.messages.frontend
    functionSourceFile: babel.messages.frontend
    functionUses: 0
    functionsReached:
    - pickle.load
    - <builtin>.open
    - parser.parse_args
    - babel.localedata.exists
    - optparse.OptionParser
    - babel.messages.frontend.CommandLineInterface.run
    - lang.isalpha
    - os.path.exists
    - babel.core.get_global
    - cmdinst.run
    - sep.join
    - os.path.basename
    - locale_id.lower
    - <builtin>.getattr
    - _global_data.get
    - babel.messages.frontend.main
    - handler.setFormatter
    - long.strip
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - cmdclass.option_aliases.get
    - itertools.chain.from_iterable
    - <builtin>.vars
    - <builtin>.setattr
    - babel.core.get_locale_identifier
    - strs.append
    - as_args.replace
    - logging.StreamHandler
    - babel.messages.frontend.CommandLineInterface._configure_logging
    - os.path.dirname
    - babel.localedata.locale_identifiers
    - logging.Formatter
    - cmdinst.ensure_finalized
    - <builtin>.isinstance
    - <builtin>.bool
    - handler.setLevel
    - parser.add_option
    - babel.core.parse_locale
    - logging.getLogger
    - strs.extend
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - cmdclass.option_choices.get
    - os.path.isfile
    - <builtin>.len
    - cmdinst.initialize_options
    - <builtin>.print
    - <builtin>.sorted
    - parser.error
    - babel.localedata.resolve_locale_filename
    - <builtin>.max
    - os.listdir
    - identifier.partition
    - babel.localedata.normalize_locale
    - babel.core._raise_no_data_error
    - name.replace
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.messages.frontend.CommandLineInterface._configure_command
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: logging.getLogger
    functionSourceFile: logging
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e579220>
    argNames:
    - arg
    - split
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 63
    functionName: babel.messages.frontend.listify_value
    functionSourceFile: babel.messages.frontend
    functionUses: 9
    functionsReached:
    - <builtin>.str
    - babel.messages.frontend.listify_value
    - <builtin>.all
    - out.extend
    - <builtin>.isinstance
    - s.strip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: out.extend
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: s.strip
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e6ce5b0>
    argNames:
    - self
    - dist
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 135
    functionName: babel.messages.frontend.CommandMixin.__init__
    functionSourceFile: babel.messages.frontend
    functionUses: 0
    functionsReached:
    - babel.messages.frontend.CommandMixin.initialize_options
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 145
    functionName: babel.messages.frontend.CommandMixin.initialize_options
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 148
    functionName: babel.messages.frontend.CommandMixin.ensure_finalized
    functionSourceFile: babel.messages.frontend
    functionUses: 0
    functionsReached:
    - babel.messages.frontend.CommandMixin.finalize_options
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 153
    functionName: babel.messages.frontend.CommandMixin.finalize_options
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - RuntimeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 180
    functionName: babel.messages.frontend.CompileCatalog.initialize_options
    functionSourceFile: babel.messages.frontend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 189
    functionName: babel.messages.frontend.CompileCatalog.finalize_options
    functionSourceFile: babel.messages.frontend
    functionUses: 0
    functionsReached:
    - <builtin>.str
    - babel.messages.frontend.listify_value
    - <builtin>.all
    - out.extend
    - <builtin>.isinstance
    - s.strip
    linkageType: pythonLinkage
    raised:
    - OptionError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 196
    functionName: babel.messages.frontend.CompileCatalog.run
    functionSourceFile: babel.messages.frontend
    functionUses: 0
    functionsReached:
    - <builtin>.open
    - flag.strip
    - keyword.partition
    - babel.messages.pofile._extract_locations
    - fileobj.write
    - line.partition
    - babel.messages.pofile._NormalizedString.__init__
    - translation.denormalize
    - dict.fromkeys
    - babel.messages.catalog.Catalog.check
    - babel.messages.frontend.CompileCatalog._run_domain
    - <builtin>.super
    - locations.append
    - s.append
    - keyword.startswith
    - array.array.tobytes
    - <builtin>.str
    - babel.messages.pofile.PoFileParser.__init__
    - message.check
    - line.decode
    - msgid.encode
    - babel.messages.pofile.PoFileParser._invalid_pofile
    - babel.messages.pofile._NormalizedString.denormalize
    - message.string.encode
    - babel.messages.pofile.read_po
    - <builtin>.isinstance
    - line.strip
    - babel.messages.pofile.PoFileParser._finish_current_message
    - <builtin>.enumerate
    - <builtin>.min
    - pathlib.Path
    - line.lstrip
    - m.denormalize
    - dir_path.iterdir
    - array.array
    - babel.messages.catalog.Catalog._key_for
    - babel.messages.catalog.Message.__init__
    - <builtin>.len
    - offsets.append
    - babel.messages.catalog.Catalog.__init__
    - <builtin>.int
    - <builtin>.print
    - babel.messages.pofile.PoFileParser._process_message_line
    - revision_date.replace
    - babel.messages.pofile.PoFileParser.parse
    - messages.sort
    - babel.messages.pofile.PoFileParser._process_string_continuation_line
    - <builtin>.sorted
    - babel.messages.pofile.PoFileParser._reset_message_state
    - babel.messages.pofile.PoFileParser._process_keyword_line
    - po_file.exists
    - msgstrs.append
    - babel.messages.frontend.CompileCatalog._get_po_mo_triples
    - po_file.with_suffix
    - <builtin>.list
    - <builtin>.set
    - creation_date.replace
    - message.id.encode
    - <builtin>.map
    - msgstr.encode
    - struct.pack
    - message.context.encode
    - babel.messages.pofile.PoFileParser._add_message
    - <builtin>.range
    - <builtin>.tuple
    - babel.messages.pofile.PoFileParser._process_comment
    - location.rpartition
    - babel.messages.mofile.write_mo
    - datetime.datetime.now
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 5
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - domain
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 227
    functionName: babel.messages.frontend.CompileCatalog._run_domain
    functionSourceFile: babel.messages.frontend
    functionUses: 1
    functionsReached:
    - <builtin>.open
    - flag.strip
    - keyword.partition
    - babel.messages.pofile._extract_locations
    - fileobj.write
    - line.partition
    - babel.messages.pofile._NormalizedString.__init__
    - translation.denormalize
    - dict.fromkeys
    - babel.messages.catalog.Catalog.check
    - <builtin>.super
    - locations.append
    - s.append
    - keyword.startswith
    - array.array.tobytes
    - <builtin>.str
    - babel.messages.pofile.PoFileParser.__init__
    - message.check
    - line.decode
    - msgid.encode
    - babel.messages.pofile.PoFileParser._invalid_pofile
    - babel.messages.pofile._NormalizedString.denormalize
    - message.string.encode
    - babel.messages.pofile.read_po
    - <builtin>.isinstance
    - line.strip
    - babel.messages.pofile.PoFileParser._finish_current_message
    - <builtin>.enumerate
    - <builtin>.min
    - pathlib.Path
    - line.lstrip
    - m.denormalize
    - dir_path.iterdir
    - array.array
    - babel.messages.catalog.Catalog._key_for
    - babel.messages.catalog.Message.__init__
    - <builtin>.len
    - offsets.append
    - babel.messages.catalog.Catalog.__init__
    - <builtin>.int
    - <builtin>.print
    - babel.messages.pofile.PoFileParser._process_message_line
    - revision_date.replace
    - babel.messages.pofile.PoFileParser.parse
    - messages.sort
    - babel.messages.pofile.PoFileParser._process_string_continuation_line
    - <builtin>.sorted
    - babel.messages.pofile.PoFileParser._reset_message_state
    - babel.messages.pofile.PoFileParser._process_keyword_line
    - po_file.exists
    - msgstrs.append
    - babel.messages.frontend.CompileCatalog._get_po_mo_triples
    - po_file.with_suffix
    - <builtin>.list
    - <builtin>.set
    - creation_date.replace
    - message.id.encode
    - <builtin>.map
    - msgstr.encode
    - struct.pack
    - message.context.encode
    - babel.messages.pofile.PoFileParser._add_message
    - <builtin>.range
    - <builtin>.tuple
    - babel.messages.pofile.PoFileParser._process_comment
    - location.rpartition
    - babel.messages.mofile.write_mo
    - datetime.datetime.now
    linkageType: pythonLinkage
    raised:
    - OptionError
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - domain
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 205
    functionName: babel.messages.frontend.CompileCatalog._get_po_mo_triples
    functionSourceFile: babel.messages.frontend
    functionUses: 2
    functionsReached:
    - dir_path.iterdir
    - po_file.with_suffix
    - po_file.exists
    - pathlib.Path
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathlib.Path
    functionSourceFile: pathlib
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: po_file.with_suffix
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dir_path.iterdir
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: po_file.exists
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e6348e0>
    - <ast.Constant object at 0x7f1b4e634100>
    - <ast.Constant object at 0x7f1b4e6346a0>
    - <ast.Constant object at 0x7f1b4e6340a0>
    - <ast.Constant object at 0x7f1b4e6347f0>
    argNames:
    - fileobj
    - locale
    - domain
    - ignore_obsolete
    - charset
    - abort_invalid
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 382
    functionName: babel.messages.pofile.read_po
    functionSourceFile: babel.messages.pofile
    functionUses: 5
    functionsReached:
    - flag.strip
    - keyword.partition
    - babel.messages.pofile._extract_locations
    - line.partition
    - babel.messages.pofile._NormalizedString.__init__
    - translation.denormalize
    - dict.fromkeys
    - <builtin>.super
    - locations.append
    - s.append
    - keyword.startswith
    - <builtin>.str
    - babel.messages.pofile.PoFileParser.__init__
    - line.decode
    - babel.messages.pofile.PoFileParser._invalid_pofile
    - babel.messages.pofile._NormalizedString.denormalize
    - <builtin>.isinstance
    - line.strip
    - babel.messages.pofile.PoFileParser._finish_current_message
    - <builtin>.enumerate
    - line.lstrip
    - m.denormalize
    - babel.messages.catalog.Catalog._key_for
    - babel.messages.catalog.Message.__init__
    - <builtin>.len
    - babel.messages.catalog.Catalog.__init__
    - <builtin>.print
    - <builtin>.int
    - babel.messages.pofile.PoFileParser._process_message_line
    - revision_date.replace
    - babel.messages.pofile.PoFileParser.parse
    - babel.messages.pofile.PoFileParser._process_string_continuation_line
    - <builtin>.sorted
    - babel.messages.pofile.PoFileParser._reset_message_state
    - babel.messages.pofile.PoFileParser._process_keyword_line
    - <builtin>.set
    - <builtin>.list
    - creation_date.replace
    - <builtin>.map
    - babel.messages.pofile.PoFileParser._add_message
    - <builtin>.range
    - <builtin>.tuple
    - babel.messages.pofile.PoFileParser._process_comment
    - location.rpartition
    - datetime.datetime.now
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 6
    IfCount: 3
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e5e8430>
    argNames:
    - fileobj
    - catalog
    - use_fuzzy
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 108
    functionName: babel.messages.mofile.write_mo
    functionSourceFile: babel.messages.mofile
    functionUses: 2
    functionsReached:
    - <builtin>.min
    - msgstrs.append
    - <builtin>.list
    - fileobj.write
    - array.array
    - message.id.encode
    - msgid.encode
    - msgstr.encode
    - struct.pack
    - <builtin>.len
    - offsets.append
    - message.context.encode
    - <builtin>.int
    - message.string.encode
    - messages.sort
    - array.array.tobytes
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - ignore_patterns
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 271
    functionName: babel.messages.frontend._make_directory_filter
    functionSourceFile: babel.messages.frontend
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - dirname
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 276
    functionName: babel.messages.frontend._make_directory_filter.cli_directory_filter
    functionSourceFile: babel.messages.frontend
    functionUses: 2
    functionsReached:
    - fnmatch.fnmatch
    - os.path.basename
    - <builtin>.any
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fnmatch.fnmatch
    functionSourceFile: fnmatch
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 369
    functionName: babel.messages.frontend.ExtractMessages.initialize_options
    functionSourceFile: babel.messages.frontend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 19
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 11
    EdgeCount: 28
    ICount: 1
    IfCount: 19
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 395
    functionName: babel.messages.frontend.ExtractMessages.finalize_options
    functionSourceFile: babel.messages.frontend
    functionUses: 0
    functionsReached:
    - keywords.items
    - os.path.exists
    - keywords.update
    - s.strip
    - s.split
    - babel.messages.frontend._make_directory_filter
    - <builtin>.str
    - inds.append
    - string.split
    - k.split
    - <builtin>.isinstance
    - keywords.setdefault
    - <builtin>.int
    - babel.messages.frontend._parse_spec
    - babel.messages.frontend.listify_value
    - babel.messages.frontend.parse_keywords
    - <builtin>.set
    - DEFAULT_KEYWORDS.copy
    - <builtin>.list
    - re.split
    - <builtin>.all
    - out.extend
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised:
    - OptionError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: DEFAULT_KEYWORDS.copy
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues:
    - <ast.Tuple object at 0x7f1b4e534880>
    argNames:
    - strings
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1255
    functionName: babel.messages.frontend.parse_keywords
    functionSourceFile: babel.messages.frontend
    functionUses: 8
    functionsReached:
    - keywords.items
    - keywords.setdefault
    - inds.append
    - string.split
    - <builtin>.set
    - <builtin>.int
    - <builtin>.tuple
    - babel.messages.frontend._parse_spec
    - s.split
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: keywords.update
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: k.split
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - path
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 467
    functionName: babel.messages.frontend.ExtractMessages._build_callback
    functionSourceFile: babel.messages.frontend
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - filename
    - method
    - options
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 468
    functionName: babel.messages.frontend.ExtractMessages._build_callback.callback
    functionSourceFile: babel.messages.frontend
    functionUses: 3
    functionsReached:
    - os.path.isfile
    - os.path.normpath
    - options.items
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.normpath
    functionSourceFile: os
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: options.items
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 489
    functionName: babel.messages.frontend.ExtractMessages.run
    functionSourceFile: babel.messages.frontend
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - translatable.append
    - sys.stderr.write
    - configparser.RawConfigParser.items
    - inds.append
    - babel.messages.extract.extract
    - re.escape
    - method.split
    - babel.messages.frontend.ExtractMessages._get_mappings
    - os.path.normpath
    - babel.messages.pofile._sort_messages
    - os.path.isfile
    - babel.messages.catalog.Catalog.__init__
    - string.splitlines
    - babel.messages.pofile.generate_po._format_comment
    - babel.messages._compat.find_entrypoints
    - babel.messages.pofile.generate_po._format_message
    - <builtin>.list
    - re.split
    - <builtin>.all
    - <builtin>.range
    - <builtin>.callable
    - out.extend
    - babel.messages.pofile.normalize
    - message_extractors.items
    - line.strip
    - babel.messages.extract.extract_from_file
    - <builtin>.open
    - filename.replace
    - os.path.basename
    - _BUILTIN_EXTRACTORS.get
    - babel.messages.frontend._parse_string_options
    - os.path.join
    - <builtin>.str
    - lines.append
    - textwrap.TextWrapper.wrap
    - line.encode
    - method.rfind
    - <builtin>.isinstance
    - <builtin>.enumerate
    - pkg_resources.working_set.iter_entry_points
    - babel.messages.frontend.ExtractMessages._build_callback
    - functools.partial
    - mappings.append
    - filename.startswith
    - line.startswith
    - locs.append
    - babel.messages.catalog.Message.__init__
    - extractors_read.items
    - <builtin>.len
    - babel.messages.frontend._parse_mapping_toml
    - options.items
    - babel.messages.extract._find_extractor
    - <builtin>.int
    - tomllib.load
    - <builtin>.set
    - options.copy
    - creation_date.replace
    - entry.pop
    - chunks.pop
    - pattern.startswith
    - <builtin>.tuple
    - method_map.append
    - babel.messages.frontend._parse_config_object
    - datetime.datetime.now
    - fnmatch.fnmatch
    - buf.append
    - <builtin>.__import__
    - subdir.startswith
    - options.pop
    - babel.messages.extract.extract_from_dir
    - comment_header.splitlines
    - dict.fromkeys
    - babel.messages.frontend._make_directory_filter.cli_directory_filter
    - s.split
    - part.strip
    - WORD_SEP.split
    - string.split
    - keywords.keys
    - babel.messages.extract._make_default_directory_filter.directory_filter
    - os.path.relpath.replace
    - babel.messages.catalog.Catalog.add
    - <builtin>.any
    - os.path.abspath
    - tomli.load
    - catalog.obsolete.values
    - os.getcwd
    - babel.messages.frontend.parse_mapping_cfg
    - keywords.setdefault
    - textwrap.TextWrapper.__init__
    - config.get
    - os.walk
    - importlib.metadata.entry_points
    - dirnames.sort
    - revision_date.replace
    - <builtin>.sorted
    - filenames.sort
    - messages.sort
    - babel.messages.frontend.parse_keywords
    - babel.messages.pofile.escape
    - babel.messages.extract._strip_comment_tags._strip
    - io.StringIO
    - babel.messages.pofile._enclose_filename_if_necessary
    - extractors.get
    - string.replace
    - keywords.items
    - configparser.RawConfigParser
    - babel.util.pathmatch
    - fileobj.write
    - entry.copy
    - babel.messages.extract._make_default_directory_filter
    - configparser.RawConfigParser.sections
    - os.path.relpath
    - babel.messages.extract._strip_comment_tags
    - s.strip
    - options.get
    - options_map.items
    - <builtin>.dict
    - chunks.reverse
    - configparser.RawConfigParser.read_file
    - re.match
    - section.split
    - babel.messages.pofile.write_po
    - babel.messages.extract._match_messages_against_spec
    - filename.endswith
    - babel.messages.frontend._parse_spec
    - babel.messages.frontend.listify_value
    - babel.messages.extract.check_and_call_extract_file
    - babel.messages.pofile.generate_po
    - babel.messages.frontend.ExtractMessages._build_callback.callback
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 4
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 553
    functionName: babel.messages.frontend.ExtractMessages._get_mappings
    functionSourceFile: babel.messages.frontend
    functionUses: 1
    functionsReached:
    - <builtin>.open
    - keywords.items
    - configparser.RawConfigParser
    - options.pop
    - entry.copy
    - os.path.basename
    - <builtin>.getattr
    - configparser.RawConfigParser.sections
    - s.strip
    - s.split
    - configparser.RawConfigParser.items
    - babel.messages.frontend._parse_string_options
    - part.strip
    - <builtin>.str
    - inds.append
    - string.split
    - <builtin>.dict
    - <builtin>.isinstance
    - tomli.load
    - <builtin>.enumerate
    - configparser.RawConfigParser.read_file
    - keywords.setdefault
    - babel.messages.frontend.parse_mapping_cfg
    - mappings.append
    - config.get
    - extractors_read.items
    - section.split
    - babel.messages.frontend._parse_mapping_toml
    - <builtin>.int
    - babel.messages.frontend._parse_spec
    - tomllib.load
    - babel.messages.frontend.listify_value
    - babel.messages.frontend.parse_keywords
    - <builtin>.set
    - options.copy
    - <builtin>.all
    - io.StringIO
    - entry.pop
    - message_extractors.items
    - out.extend
    - <builtin>.tuple
    - method_map.append
    - extractors.get
    - babel.messages.frontend._parse_config_object
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.getcwd
    functionSourceFile: os
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 3
    IfCount: 7
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4ebf3be0>
    argNames:
    - filepath
    - method_map
    - options_map
    - callback
    - keywords
    - comment_tags
    - strip_comment_tags
    - dirpath
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 268
    functionName: babel.messages.extract.check_and_call_extract_file
    functionSourceFile: babel.messages.extract
    functionUses: 2
    functionsReached:
    - babel.messages.extract.extract_from_file
    - <builtin>.open
    - buf.append
    - <builtin>.__import__
    - babel.util.pathmatch
    - <builtin>.getattr
    - _BUILTIN_EXTRACTORS.get
    - os.path.relpath
    - babel.messages.extract._strip_comment_tags
    - translatable.append
    - options.get
    - sys.stderr.write
    - os.path.join
    - options_map.items
    - babel.messages.extract.extract
    - re.escape
    - keywords.keys
    - method.rfind
    - method.split
    - os.path.relpath.replace
    - <builtin>.isinstance
    - <builtin>.enumerate
    - pkg_resources.working_set.iter_entry_points
    - os.path.normpath
    - re.match
    - functools.partial
    - line.startswith
    - os.path.isfile
    - importlib.metadata.entry_points
    - <builtin>.len
    - babel.messages.extract._match_messages_against_spec
    - options.items
    - babel.messages.extract._find_extractor
    - babel.messages._compat.find_entrypoints
    - <builtin>.set
    - <builtin>.list
    - babel.messages.extract._strip_comment_tags._strip
    - re.split
    - pattern.startswith
    - <builtin>.callable
    - <builtin>.tuple
    - babel.messages.frontend.ExtractMessages._build_callback.callback
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 8
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e5ed8e0>
    - <ast.Name object at 0x7f1b4e5ed880>
    - <ast.Constant object at 0x7f1b4e5ede50>
    - <ast.Name object at 0x7f1b4e5edb80>
    - <ast.Tuple object at 0x7f1b4e5ed280>
    - <ast.Constant object at 0x7f1b4e5ed700>
    - <ast.Constant object at 0x7f1b4e5edee0>
    - <ast.Constant object at 0x7f1b4e5ed190>
    argNames:
    - dirname
    - method_map
    - options_map
    - keywords
    - comment_tags
    - callback
    - strip_comment_tags
    - directory_filter
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 154
    functionName: babel.messages.extract.extract_from_dir
    functionSourceFile: babel.messages.extract
    functionUses: 1
    functionsReached:
    - babel.messages.extract.extract_from_file
    - <builtin>.open
    - buf.append
    - <builtin>.__import__
    - subdir.startswith
    - babel.util.pathmatch
    - os.path.basename
    - babel.messages.extract._make_default_directory_filter
    - <builtin>.getattr
    - _BUILTIN_EXTRACTORS.get
    - babel.messages.frontend._make_directory_filter.cli_directory_filter
    - os.path.relpath
    - babel.messages.extract._strip_comment_tags
    - translatable.append
    - options.get
    - sys.stderr.write
    - os.path.join
    - options_map.items
    - babel.messages.extract.extract
    - keywords.keys
    - re.escape
    - method.rfind
    - method.split
    - babel.messages.extract._make_default_directory_filter.directory_filter
    - os.path.relpath.replace
    - <builtin>.isinstance
    - <builtin>.any
    - os.path.abspath
    - babel.messages.frontend.ExtractMessages._build_callback.callback
    - <builtin>.enumerate
    - pkg_resources.working_set.iter_entry_points
    - os.getcwd
    - re.match
    - os.path.normpath
    - functools.partial
    - line.startswith
    - os.walk
    - os.path.isfile
    - importlib.metadata.entry_points
    - <builtin>.len
    - babel.messages.extract._match_messages_against_spec
    - options.items
    - dirnames.sort
    - babel.messages.extract._find_extractor
    - filenames.sort
    - babel.messages._compat.find_entrypoints
    - <builtin>.set
    - babel.messages.extract.check_and_call_extract_file
    - <builtin>.list
    - babel.messages.extract._strip_comment_tags._strip
    - re.split
    - pattern.startswith
    - <builtin>.callable
    - <builtin>.tuple
    - fnmatch.fnmatch
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 10
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e5d4730>
    - <ast.Constant object at 0x7f1b4e5d44f0>
    - <ast.Constant object at 0x7f1b4e5d4eb0>
    - <ast.Constant object at 0x7f1b4e5d48e0>
    - <ast.Constant object at 0x7f1b4e5d4c70>
    - <ast.Constant object at 0x7f1b4e5d4d00>
    - <ast.Constant object at 0x7f1b4e5d49d0>
    - <ast.Constant object at 0x7f1b4e5d4c40>
    argNames:
    - fileobj
    - catalog
    - width
    - no_location
    - omit_header
    - sort_output
    - sort_by_file
    - ignore_obsolete
    - include_previous
    - include_lineno
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 546
    functionName: babel.messages.pofile.write_po
    functionSourceFile: babel.messages.pofile
    functionUses: 4
    functionsReached:
    - buf.append
    - filename.replace
    - fileobj.write
    - comment_header.splitlines
    - WORD_SEP.split
    - lines.append
    - textwrap.TextWrapper.wrap
    - line.encode
    - <builtin>.isinstance
    - chunks.reverse
    - catalog.obsolete.values
    - babel.messages.pofile._sort_messages
    - textwrap.TextWrapper.__init__
    - filename.startswith
    - locs.append
    - <builtin>.len
    - filename.endswith
    - string.splitlines
    - <builtin>.sorted
    - messages.sort
    - babel.messages.pofile.generate_po._format_comment
    - babel.messages.pofile.generate_po._format_message
    - babel.messages.pofile.escape
    - <builtin>.list
    - babel.messages.pofile.generate_po
    - chunks.pop
    - <builtin>.range
    - babel.messages.pofile._enclose_filename_if_necessary
    - babel.messages.pofile.normalize
    - string.replace
    - line.strip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4eeb1730>
    - <ast.Constant object at 0x7f1b4eeb15e0>
    argNames:
    - fileobj
    - filename
    - style
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1197
    functionName: babel.messages.frontend._parse_mapping_toml
    functionSourceFile: babel.messages.frontend
    functionUses: 2
    functionsReached:
    - keywords.items
    - entry.copy
    - s.strip
    - s.split
    - <builtin>.str
    - inds.append
    - string.split
    - <builtin>.isinstance
    - tomli.load
    - <builtin>.enumerate
    - keywords.setdefault
    - config.get
    - extractors_read.items
    - <builtin>.int
    - babel.messages.frontend._parse_spec
    - tomllib.load
    - babel.messages.frontend.listify_value
    - babel.messages.frontend.parse_keywords
    - <builtin>.set
    - <builtin>.all
    - entry.pop
    - out.extend
    - <builtin>.tuple
    - method_map.append
    - extractors.get
    - babel.messages.frontend._parse_config_object
    linkageType: pythonLinkage
    raised:
    - ConfigurationError
    - ImportError
    - ValueError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e447430>
    argNames:
    - fileobj
    - filename
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1062
    functionName: babel.messages.frontend.parse_mapping_cfg
    functionSourceFile: babel.messages.frontend
    functionUses: 3
    functionsReached:
    - keywords.items
    - configparser.RawConfigParser
    - options.pop
    - configparser.RawConfigParser.sections
    - s.strip
    - s.split
    - babel.messages.frontend._parse_string_options
    - configparser.RawConfigParser.items
    - part.strip
    - <builtin>.str
    - inds.append
    - string.split
    - <builtin>.dict
    - <builtin>.isinstance
    - <builtin>.enumerate
    - configparser.RawConfigParser.read_file
    - keywords.setdefault
    - section.split
    - <builtin>.int
    - babel.messages.frontend._parse_spec
    - babel.messages.frontend.parse_keywords
    - babel.messages.frontend.listify_value
    - <builtin>.set
    - options.copy
    - <builtin>.all
    - out.extend
    - <builtin>.tuple
    - method_map.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: mappings.append
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: message_extractors.items
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: io.StringIO
    functionSourceFile: io
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: method_map.append
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - options
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1093
    functionName: babel.messages.frontend._parse_string_options
    functionSourceFile: babel.messages.frontend
    functionUses: 4
    functionsReached:
    - keywords.items
    - babel.messages.frontend.parse_keywords
    - babel.messages.frontend.listify_value
    - <builtin>.str
    - keywords.setdefault
    - string.split
    - <builtin>.set
    - options.pop
    - inds.append
    - options.copy
    - <builtin>.tuple
    - <builtin>.all
    - out.extend
    - <builtin>.isinstance
    - <builtin>.int
    - s.strip
    - babel.messages.frontend._parse_spec
    - s.split
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - input_file
    - output_file
    - locale
    - width
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 597
    functionName: babel.messages.frontend._init_catalog
    functionSourceFile: babel.messages.frontend
    functionUses: 2
    functionsReached:
    - <builtin>.open
    - keyword.partition
    - flag.strip
    - babel.messages.pofile._extract_locations
    - buf.append
    - filename.replace
    - fileobj.write
    - line.partition
    - babel.messages.pofile._NormalizedString.__init__
    - comment_header.splitlines
    - translation.denormalize
    - dict.fromkeys
    - <builtin>.super
    - locations.append
    - s.append
    - keyword.startswith
    - WORD_SEP.split
    - <builtin>.str
    - lines.append
    - textwrap.TextWrapper.wrap
    - babel.messages.pofile.PoFileParser.__init__
    - line.encode
    - line.decode
    - babel.messages.pofile.PoFileParser._invalid_pofile
    - os.path.dirname
    - babel.messages.pofile._NormalizedString.denormalize
    - <builtin>.isinstance
    - babel.messages.pofile.read_po
    - string.splitlines
    - chunks.reverse
    - line.strip
    - catalog.obsolete.values
    - babel.messages.pofile.PoFileParser._finish_current_message
    - os.makedirs
    - <builtin>.enumerate
    - babel.messages.pofile._sort_messages
    - line.lstrip
    - textwrap.TextWrapper.__init__
    - m.denormalize
    - filename.startswith
    - locs.append
    - babel.messages.catalog.Catalog._key_for
    - babel.messages.catalog.Message.__init__
    - babel.messages.pofile.write_po
    - <builtin>.len
    - babel.messages.catalog.Catalog.__init__
    - <builtin>.int
    - babel.messages.pofile.PoFileParser._process_message_line
    - revision_date.replace
    - <builtin>.sorted
    - babel.messages.pofile.PoFileParser.parse
    - messages.sort
    - babel.messages.pofile.PoFileParser._process_string_continuation_line
    - babel.messages.pofile.generate_po._format_comment
    - <builtin>.print
    - babel.messages.pofile.generate_po._format_message
    - babel.messages.pofile.PoFileParser._process_keyword_line
    - babel.messages.pofile.PoFileParser._reset_message_state
    - filename.endswith
    - <builtin>.set
    - <builtin>.list
    - babel.messages.pofile.escape
    - <builtin>.tuple
    - creation_date.replace
    - babel.messages.pofile.generate_po
    - <builtin>.map
    - chunks.pop
    - babel.messages.pofile.PoFileParser._add_message
    - <builtin>.range
    - babel.messages.pofile._enclose_filename_if_necessary
    - babel.messages.pofile.PoFileParser._process_comment
    - babel.messages.pofile.normalize
    - location.rpartition
    - string.replace
    - datetime.datetime.now
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.makedirs
    functionSourceFile: os
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 636
    functionName: babel.messages.frontend.InitCatalog.initialize_options
    functionSourceFile: babel.messages.frontend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 0
    IfCount: 7
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 645
    functionName: babel.messages.frontend.InitCatalog.finalize_options
    functionSourceFile: babel.messages.frontend
    functionUses: 0
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - pathlib.Path
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - <builtin>.int
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised:
    - OptionError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 669
    functionName: babel.messages.frontend.InitCatalog.run
    functionSourceFile: babel.messages.frontend
    functionUses: 0
    functionsReached:
    - <builtin>.open
    - keyword.partition
    - flag.strip
    - babel.messages.pofile._extract_locations
    - buf.append
    - filename.replace
    - fileobj.write
    - line.partition
    - babel.messages.pofile._NormalizedString.__init__
    - comment_header.splitlines
    - translation.denormalize
    - dict.fromkeys
    - <builtin>.super
    - locations.append
    - s.append
    - keyword.startswith
    - WORD_SEP.split
    - <builtin>.str
    - lines.append
    - textwrap.TextWrapper.wrap
    - babel.messages.pofile.PoFileParser.__init__
    - line.encode
    - line.decode
    - babel.messages.pofile.PoFileParser._invalid_pofile
    - os.path.dirname
    - babel.messages.pofile._NormalizedString.denormalize
    - <builtin>.isinstance
    - babel.messages.pofile.read_po
    - string.splitlines
    - chunks.reverse
    - line.strip
    - catalog.obsolete.values
    - babel.messages.pofile.PoFileParser._finish_current_message
    - os.makedirs
    - <builtin>.enumerate
    - babel.messages.pofile._sort_messages
    - line.lstrip
    - textwrap.TextWrapper.__init__
    - m.denormalize
    - filename.startswith
    - locs.append
    - babel.messages.catalog.Catalog._key_for
    - babel.messages.catalog.Message.__init__
    - babel.messages.pofile.write_po
    - <builtin>.len
    - babel.messages.catalog.Catalog.__init__
    - <builtin>.int
    - babel.messages.pofile.PoFileParser._process_message_line
    - revision_date.replace
    - <builtin>.sorted
    - babel.messages.pofile.PoFileParser.parse
    - messages.sort
    - babel.messages.pofile.PoFileParser._process_string_continuation_line
    - babel.messages.pofile.generate_po._format_comment
    - <builtin>.print
    - babel.messages.pofile.generate_po._format_message
    - babel.messages.frontend._init_catalog
    - babel.messages.pofile.PoFileParser._process_keyword_line
    - babel.messages.pofile.PoFileParser._reset_message_state
    - filename.endswith
    - <builtin>.set
    - <builtin>.list
    - babel.messages.pofile.escape
    - <builtin>.tuple
    - creation_date.replace
    - babel.messages.pofile.generate_po
    - <builtin>.map
    - chunks.pop
    - babel.messages.pofile.PoFileParser._add_message
    - <builtin>.range
    - babel.messages.pofile._enclose_filename_if_necessary
    - babel.messages.pofile.PoFileParser._process_comment
    - babel.messages.pofile.normalize
    - location.rpartition
    - string.replace
    - datetime.datetime.now
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 733
    functionName: babel.messages.frontend.UpdateCatalog.initialize_options
    functionSourceFile: babel.messages.frontend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 0
    IfCount: 9
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 750
    functionName: babel.messages.frontend.UpdateCatalog.finalize_options
    functionSourceFile: babel.messages.frontend
    functionUses: 0
    functionsReached:
    - pickle.load
    - <builtin>.open
    - babel.localedata.exists
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - os.path.basename
    - locale_id.lower
    - _global_data.get
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - itertools.chain.from_iterable
    - babel.core.get_locale_identifier
    - os.path.dirname
    - <builtin>.isinstance
    - <builtin>.bool
    - babel.core.parse_locale
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - os.path.isfile
    - <builtin>.len
    - <builtin>.int
    - babel.localedata.resolve_locale_filename
    - identifier.partition
    - babel.core._raise_no_data_error
    - babel.localedata.normalize_locale
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised:
    - OptionError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 780
    functionName: babel.messages.frontend.UpdateCatalog._get_locale_po_file_tuples
    functionSourceFile: babel.messages.frontend
    functionUses: 1
    functionsReached:
    - <builtin>.str
    - output_path.iterdir
    - pathlib.Path
    - po_file.exists
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: output_path.iterdir
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 14
    IfCount: 8
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 794
    functionName: babel.messages.frontend.UpdateCatalog.run
    functionSourceFile: babel.messages.frontend
    functionUses: 0
    functionsReached:
    - babel.messages.pofile._extract_locations
    - difflib.SequenceMatcher
    - difflib.SequenceMatcher.set_seq1
    - difflib.SequenceMatcher.ratio
    - os.remove
    - babel.messages.catalog.get_close_matches
    - line.decode
    - babel.messages.pofile._NormalizedString.denormalize
    - output_path.iterdir
    - babel.messages.pofile._sort_messages
    - difflib.SequenceMatcher.set_seq2
    - string.splitlines
    - babel.messages.catalog.Catalog.__init__
    - babel.messages.pofile.PoFileParser._process_message_line
    - babel.messages.pofile.generate_po._format_comment
    - babel.messages.pofile.generate_po._format_message
    - babel.messages.pofile.PoFileParser._process_keyword_line
    - po_file.exists
    - remaining.pop
    - matchkey.lower
    - <builtin>.list
    - <builtin>.all
    - <builtin>.map
    - heapq.nlargest.append
    - <builtin>.range
    - babel.messages.pofile.PoFileParser._add_message
    - babel.messages.pofile.normalize
    - line.strip
    - <builtin>.open
    - flag.strip
    - keyword.partition
    - os.path.exists
    - filename.replace
    - os.path.basename
    - babel.messages.catalog.Catalog.update
    - <builtin>.super
    - s.append
    - os.path.join
    - <builtin>.str
    - lines.append
    - textwrap.TextWrapper.wrap
    - line.encode
    - message.clone
    - <builtin>.isinstance
    - <builtin>.enumerate
    - line.lstrip
    - filename.startswith
    - babel.messages.catalog.Catalog._key_for
    - locs.append
    - babel.messages.catalog.Message.__init__
    - <builtin>.len
    - <builtin>.print
    - <builtin>.int
    - babel.messages.pofile.PoFileParser._process_string_continuation_line
    - babel.messages.pofile.PoFileParser.parse
    - difflib.SequenceMatcher.real_quick_ratio
    - check_status.items
    - <builtin>.set
    - creation_date.replace
    - chunks.pop
    - babel.messages.catalog.Catalog._to_fuzzy_match_key
    - <builtin>.tuple
    - babel.messages.pofile.PoFileParser._process_comment
    - location.rpartition
    - datetime.datetime.now
    - buf.append
    - line.partition
    - babel.messages.frontend.UpdateCatalog._get_locale_po_file_tuples
    - babel.messages.pofile._NormalizedString.__init__
    - dict.fromkeys
    - comment_header.splitlines
    - locations.append
    - WORD_SEP.split
    - os.path.splitext
    - other._messages.keys
    - os.rename
    - babel.messages.pofile.PoFileParser._invalid_pofile
    - babel.messages.pofile.read_po
    - catalog.obsolete.values
    - os.makedirs
    - babel.messages.catalog.Catalog.is_identical
    - pathlib.Path
    - textwrap.TextWrapper.__init__
    - revision_date.replace
    - <builtin>.sorted
    - messages.sort
    - babel.messages.pofile.PoFileParser._reset_message_state
    - babel.messages.frontend._init_catalog
    - fuzzy_matches.add
    - babel.messages.pofile.escape
    - babel.messages.pofile._enclose_filename_if_necessary
    - string.replace
    - fileobj.write
    - fuzzy_candidates.keys
    - translation.denormalize
    - check_status.values
    - keyword.startswith
    - messages.get
    - message_1.is_identical
    - babel.messages.pofile.PoFileParser.__init__
    - messages.copy
    - <builtin>.dict
    - os.path.dirname
    - babel.messages.catalog.Catalog.__iter__
    - chunks.reverse
    - babel.messages.pofile.PoFileParser._finish_current_message
    - babel.messages.catalog.Catalog.get
    - tempfile.gettempprefix
    - m.denormalize
    - shutil.copy
    - babel.messages.pofile.write_po
    - filename.endswith
    - difflib.SequenceMatcher.quick_ratio
    - babel.messages.catalog.Catalog.update._merge
    - babel.messages.pofile.generate_po
    - heapq.nlargest
    linkageType: pythonLinkage
    raised:
    - OptionError
    - BaseError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tempfile.gettempprefix
    functionSourceFile: tempfile
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.remove
    functionSourceFile: os
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.rename
    functionSourceFile: os
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: shutil.copy
    functionSourceFile: shutil
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: check_status.items
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: check_status.values
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 10
    IfCount: 4
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e779d00>
    argNames:
    - self
    - argv
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 915
    functionName: babel.messages.frontend.CommandLineInterface.run
    functionSourceFile: babel.messages.frontend
    functionUses: 2
    functionsReached:
    - pickle.load
    - <builtin>.open
    - parser.parse_args
    - babel.localedata.exists
    - optparse.OptionParser
    - os.path.exists
    - lang.isalpha
    - sep.join
    - babel.core.get_global
    - cmdinst.run
    - os.path.basename
    - locale_id.lower
    - <builtin>.getattr
    - _global_data.get
    - handler.setFormatter
    - long.strip
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - cmdclass.option_aliases.get
    - itertools.chain.from_iterable
    - <builtin>.vars
    - <builtin>.setattr
    - babel.core.get_locale_identifier
    - strs.append
    - as_args.replace
    - logging.StreamHandler
    - babel.messages.frontend.CommandLineInterface._configure_logging
    - os.path.dirname
    - babel.localedata.locale_identifiers
    - logging.Formatter
    - cmdinst.ensure_finalized
    - <builtin>.isinstance
    - <builtin>.bool
    - handler.setLevel
    - parser.add_option
    - babel.core.parse_locale
    - strs.extend
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - cmdclass.option_choices.get
    - os.path.isfile
    - <builtin>.len
    - cmdinst.initialize_options
    - <builtin>.print
    - <builtin>.sorted
    - parser.error
    - babel.localedata.resolve_locale_filename
    - <builtin>.max
    - os.listdir
    - identifier.partition
    - babel.localedata.normalize_locale
    - babel.core._raise_no_data_error
    - name.replace
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.messages.frontend.CommandLineInterface._configure_command
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: optparse.OptionParser
    functionSourceFile: optparse
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - loglevel
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 978
    functionName: babel.messages.frontend.CommandLineInterface._configure_logging
    functionSourceFile: babel.messages.frontend
    functionUses: 3
    functionsReached:
    - logging.StreamHandler
    - handler.setLevel
    - handler.setFormatter
    - logging.Formatter
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.print
    functionSourceFile: <builtin>
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 11
    IfCount: 6
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - cmdname
    - argv
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1000
    functionName: babel.messages.frontend.CommandLineInterface._configure_command
    functionSourceFile: babel.messages.frontend
    functionUses: 3
    functionsReached:
    - parser.add_option
    - <builtin>.str
    - parser.parse_args
    - optparse.OptionParser
    - cmdclass.option_aliases.get
    - <builtin>.vars
    - name.replace
    - <builtin>.setattr
    - strs.append
    - strs.extend
    - <builtin>.getattr
    - as_args.replace
    - cmdclass.option_choices.get
    - cmdinst.ensure_finalized
    - <builtin>.isinstance
    - parser.error
    - long.strip
    - cmdinst.initialize_options
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cmdinst.run
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: logging.StreamHandler
    functionSourceFile: logging
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: handler.setLevel
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: logging.Formatter
    functionSourceFile: logging
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: handler.setFormatter
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 993
    functionName: babel.messages.frontend.CommandLineInterface._help
    functionSourceFile: babel.messages.frontend
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - <builtin>.print
    - <builtin>.sorted
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cmdinst.initialize_options
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: long.strip
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: name.replace
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: strs.append
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cmdclass.option_aliases.get
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: strs.extend
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cmdclass.option_choices.get
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parser.add_option
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parser.parse_args
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: as_args.replace
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.vars
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cmdinst.ensure_finalized
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parser.error
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1049
    functionName: babel.messages.frontend.main
    functionSourceFile: babel.messages.frontend
    functionUses: 1
    functionsReached:
    - pickle.load
    - <builtin>.open
    - parser.parse_args
    - babel.localedata.exists
    - optparse.OptionParser
    - babel.messages.frontend.CommandLineInterface.run
    - lang.isalpha
    - os.path.exists
    - babel.core.get_global
    - cmdinst.run
    - sep.join
    - os.path.basename
    - locale_id.lower
    - <builtin>.getattr
    - _global_data.get
    - handler.setFormatter
    - long.strip
    - <builtin>.filter
    - babel.core.Locale.parse._try_load_reducing
    - os.path.splitext
    - os.path.join
    - <builtin>.str
    - cmdclass.option_aliases.get
    - itertools.chain.from_iterable
    - <builtin>.vars
    - <builtin>.setattr
    - babel.core.get_locale_identifier
    - strs.append
    - as_args.replace
    - logging.StreamHandler
    - babel.messages.frontend.CommandLineInterface._configure_logging
    - os.path.dirname
    - babel.localedata.locale_identifiers
    - logging.Formatter
    - cmdinst.ensure_finalized
    - <builtin>.isinstance
    - <builtin>.bool
    - handler.setLevel
    - parser.add_option
    - babel.core.parse_locale
    - strs.extend
    - babel.core.Locale.__init__
    - babel.core.Locale.parse._try_load
    - cmdclass.option_choices.get
    - os.path.isfile
    - <builtin>.len
    - cmdinst.initialize_options
    - <builtin>.print
    - <builtin>.sorted
    - parser.error
    - babel.localedata.resolve_locale_filename
    - <builtin>.max
    - os.listdir
    - identifier.partition
    - babel.localedata.normalize_locale
    - babel.core._raise_no_data_error
    - name.replace
    - name.strip
    - parts.pop
    - identifier.split
    - _windows_reserved_name_re.match
    - <builtin>.tuple
    - babel.messages.frontend.CommandLineInterface._configure_command
    - babel.core.Locale.parse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e4472e0>
    argNames:
    - fileobj
    - filename
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1053
    functionName: babel.messages.frontend.parse_mapping
    functionSourceFile: babel.messages.frontend
    functionUses: 0
    functionsReached:
    - keywords.items
    - configparser.RawConfigParser
    - options.pop
    - configparser.RawConfigParser.sections
    - s.strip
    - s.split
    - configparser.RawConfigParser.items
    - babel.messages.frontend._parse_string_options
    - part.strip
    - <builtin>.str
    - inds.append
    - string.split
    - <builtin>.dict
    - <builtin>.isinstance
    - <builtin>.enumerate
    - configparser.RawConfigParser.read_file
    - keywords.setdefault
    - babel.messages.frontend.parse_mapping_cfg
    - warnings.warn
    - section.split
    - <builtin>.int
    - babel.messages.frontend._parse_spec
    - babel.messages.frontend.parse_keywords
    - babel.messages.frontend.listify_value
    - <builtin>.set
    - options.copy
    - <builtin>.all
    - out.extend
    - <builtin>.tuple
    - method_map.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: configparser.RawConfigParser
    functionSourceFile: configparser
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: configparser.RawConfigParser.read_file
    functionSourceFile: configparser
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: configparser.RawConfigParser.sections
    functionSourceFile: configparser
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: configparser.RawConfigParser.items
    functionSourceFile: configparser
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: part.strip
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: section.split
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: options.copy
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: options.pop
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 16
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 23
    ICount: 1
    IfCount: 16
    argCount: 2
    argDefaultValues: []
    argNames:
    - config
    - filename
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1112
    functionName: babel.messages.frontend._parse_config_object
    functionSourceFile: babel.messages.frontend
    functionUses: 3
    functionsReached:
    - keywords.items
    - entry.copy
    - s.strip
    - s.split
    - <builtin>.str
    - inds.append
    - string.split
    - <builtin>.isinstance
    - <builtin>.enumerate
    - keywords.setdefault
    - config.get
    - extractors_read.items
    - <builtin>.int
    - babel.messages.frontend._parse_spec
    - babel.messages.frontend.listify_value
    - babel.messages.frontend.parse_keywords
    - <builtin>.set
    - <builtin>.all
    - entry.pop
    - out.extend
    - <builtin>.tuple
    - method_map.append
    - extractors.get
    linkageType: pythonLinkage
    raised:
    - ConfigurationError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: config.get
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: extractors_read.items
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: entry.copy
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: entry.pop
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: extractors.get
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tomli.load
    functionSourceFile: tomli
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tomllib.load
    functionSourceFile: tomllib
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - s
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1242
    functionName: babel.messages.frontend._parse_spec
    functionSourceFile: babel.messages.frontend
    functionUses: 9
    functionsReached:
    - s.split
    - <builtin>.int
    - inds.append
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: inds.append
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: string.split
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: keywords.setdefault
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: keywords.items
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1303
    functionName: babel.messages.frontend.__getattr__
    functionSourceFile: babel.messages.frontend
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised:
    - AttributeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: babel.messages.extract
    functionSourceFile: babel.messages.extract
    functionUses: 0
    functionsReached:
    - functools.lru_cache
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4d2282e0>
    argNames:
    - self
    - __offset
    - __whence
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 60
    functionName: babel.messages.extract._FileObj.seek
    functionSourceFile: babel.messages.extract
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 61
    functionName: babel.messages.extract._FileObj.tell
    functionSourceFile: babel.messages.extract
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - comments
    - tags
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 106
    functionName: babel.messages.extract._strip_comment_tags
    functionSourceFile: babel.messages.extract
    functionUses: 5
    functionsReached:
    - <builtin>.len
    - babel.messages.extract._strip_comment_tags._strip
    - line.startswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - line
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 111
    functionName: babel.messages.extract._strip_comment_tags._strip
    functionSourceFile: babel.messages.extract
    functionUses: 6
    functionsReached:
    - line.startswith
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line.startswith
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - method_map
    - root_dir
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 120
    functionName: babel.messages.extract._make_default_directory_filter
    functionSourceFile: babel.messages.extract
    functionUses: 2
    functionsReached:
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - dirpath
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 126
    functionName: babel.messages.extract._make_default_directory_filter.directory_filter
    functionSourceFile: babel.messages.extract
    functionUses: 2
    functionsReached:
    - buf.append
    - re.match
    - subdir.startswith
    - babel.util.pathmatch
    - os.path.basename
    - re.split
    - re.escape
    - os.path.relpath
    - pattern.startswith
    - os.path.relpath.replace
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subdir.startswith
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.relpath
    functionSourceFile: os
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - dirpath
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 143
    functionName: babel.messages.extract.default_directory_filter
    functionSourceFile: babel.messages.extract
    functionUses: 0
    functionsReached:
    - os.path.basename
    - subdir.startswith
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.abspath
    functionSourceFile: os
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.walk
    functionSourceFile: os
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dirnames.sort
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: filenames.sort
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: options_map.items
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: options.get
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 6
    argDefaultValues:
    - <ast.Name object at 0x7f1b4eeb7040>
    - <ast.Tuple object at 0x7f1b4eeb7d00>
    - <ast.Constant object at 0x7f1b4eeb7a00>
    - <ast.Constant object at 0x7f1b4eeb7a30>
    argNames:
    - method
    - filename
    - keywords
    - comment_tags
    - options
    - strip_comment_tags
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 352
    functionName: babel.messages.extract.extract_from_file
    functionSourceFile: babel.messages.extract
    functionUses: 3
    functionsReached:
    - <builtin>.open
    - <builtin>.__import__
    - <builtin>.getattr
    - _BUILTIN_EXTRACTORS.get
    - babel.messages.extract._strip_comment_tags
    - translatable.append
    - sys.stderr.write
    - babel.messages.extract.extract
    - keywords.keys
    - method.rfind
    - method.split
    - <builtin>.isinstance
    - pkg_resources.working_set.iter_entry_points
    - functools.partial
    - line.startswith
    - importlib.metadata.entry_points
    - <builtin>.len
    - babel.messages.extract._match_messages_against_spec
    - babel.messages.extract._find_extractor
    - babel.messages._compat.find_entrypoints
    - <builtin>.list
    - babel.messages.extract._strip_comment_tags._strip
    - <builtin>.callable
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 16
    ICount: 3
    IfCount: 11
    argCount: 6
    argDefaultValues:
    - <ast.Name object at 0x7f1b4e1db820>
    - <ast.Tuple object at 0x7f1b4e1db730>
    - <ast.Constant object at 0x7f1b4e1dba30>
    - <ast.Constant object at 0x7f1b4e1dbdc0>
    argNames:
    - method
    - fileobj
    - keywords
    - comment_tags
    - options
    - strip_comment_tags
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 441
    functionName: babel.messages.extract.extract
    functionSourceFile: babel.messages.extract
    functionUses: 4
    functionsReached:
    - <builtin>.__import__
    - <builtin>.getattr
    - _BUILTIN_EXTRACTORS.get
    - babel.messages.extract._strip_comment_tags
    - translatable.append
    - sys.stderr.write
    - keywords.keys
    - method.rfind
    - method.split
    - <builtin>.isinstance
    - pkg_resources.working_set.iter_entry_points
    - functools.partial
    - line.startswith
    - importlib.metadata.entry_points
    - <builtin>.len
    - babel.messages.extract._match_messages_against_spec
    - babel.messages.extract._find_extractor
    - babel.messages._compat.find_entrypoints
    - babel.messages.extract._strip_comment_tags._strip
    - <builtin>.callable
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 2
    IfCount: 6
    argCount: 5
    argDefaultValues: []
    argNames:
    - lineno
    - messages
    - comments
    - fileobj
    - spec
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 387
    functionName: babel.messages.extract._match_messages_against_spec
    functionSourceFile: babel.messages.extract
    functionUses: 5
    functionsReached:
    - <builtin>.getattr
    - <builtin>.len
    - <builtin>.isinstance
    - <builtin>.tuple
    - translatable.append
    - sys.stderr.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: translatable.append
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sys.stderr.write
    functionSourceFile: sys
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 434
    functionName: babel.messages.extract._find_extractor
    functionSourceFile: babel.messages.extract
    functionUses: 5
    functionsReached:
    - pkg_resources.working_set.iter_entry_points
    - functools.partial
    - importlib.metadata.entry_points
    - <builtin>.isinstance
    - babel.messages._compat.find_entrypoints
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.callable
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: method.rfind
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: method.split
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.__import__
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _BUILTIN_EXTRACTORS.get
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: keywords.keys
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - fileobj
    - keywords
    - comment_tags
    - options
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 536
    functionName: babel.messages.extract.extract_nothing
    functionSourceFile: babel.messages.extract
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 32
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 16
    EdgeCount: 46
    ICount: 15
    IfCount: 32
    argCount: 4
    argDefaultValues: []
    argNames:
    - fileobj
    - keywords
    - comment_tags
    - options
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 548
    functionName: babel.messages.extract.extract_python
    functionSourceFile: babel.messages.extract
    functionUses: 0
    functionsReached:
    - buf.append
    - translator_comments.clear
    - <builtin>.getattr
    - x.strip
    - options.get
    - PYTHON_MAGIC_COMMENT_re.match
    - <builtin>.str
    - babel.util.parse_encoding
    - babel.util.parse_future_flags
    - value.startswith
    - m.group
    - <builtin>.isinstance
    - <builtin>.compile
    - translator_comments.pop
    - call_stack.clear
    - line1.startswith
    - babel.messages.extract._parse_python_string
    - ast.parse
    - <builtin>.min
    - line1.decode
    - call_stack.pop
    - fp.readline
    - <builtin>.len
    - PYTHON_FUTURE_IMPORT_re.finditer
    - fp.seek
    - fp.tell
    - translator_comments.append
    - fp.read
    - <builtin>.all
    - tokenize.generate_tokens
    - call_stack.append
    - <builtin>.tuple
    - re.sub
    - messages.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: babel.messages.extract.extract_python.<lambda1>
    functionSourceFile: babel.messages.extract
    functionUses: 0
    functionsReached:
    - fileobj.readline
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fileobj.readline
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tokenize.generate_tokens
    functionSourceFile: tokenize
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: call_stack.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: translator_comments.append
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: value.startswith
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: messages.append
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: translator_comments.clear
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: call_stack.clear
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - value
    - encoding
    - future_flags
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 701
    functionName: babel.messages.extract._parse_python_string
    functionSourceFile: babel.messages.extract
    functionUses: 1
    functionsReached:
    - <builtin>.str
    - <builtin>.isinstance
    - <builtin>.compile
    - <builtin>.all
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: translator_comments.pop
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: call_stack.pop
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 26
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 13
    EdgeCount: 37
    ICount: 9
    IfCount: 26
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e720fa0>
    argNames:
    - fileobj
    - keywords
    - comment_tags
    - options
    - lineno
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 721
    functionName: babel.messages.extract.extract_javascript
    functionSourceFile: babel.messages.extract
    functionUses: 1
    functionsReached:
    - expression_contents.encode
    - typing.NamedTuple.value.find
    - line_join_re.sub
    - babel.messages.jslexer.indicates_division
    - options.get
    - value.strip
    - escaped.end
    - value.startswith
    - value.splitlines
    - babel.messages.jslexer.unquote_string
    - babel.messages.extract.parse_template_string
    - match.group
    - <builtin>.any
    - io.BytesIO
    - match.end
    - babel.messages.jslexer.tokenize
    - <builtin>.enumerate
    - line_re.findall
    - babel.messages.extract.extract_javascript
    - babel.messages.jslexer.get_rules
    - <builtin>.len
    - uni_escape_re.match
    - <builtin>.int
    - hex_escape_re.match
    - rules.append
    - textwrap.dedent
    - textwrap.dedent.splitlines
    - <builtin>.chr
    - translator_comments.append
    - typing.NamedTuple.__init__
    - rule.match
    - fileobj.read
    - escaped.group
    - <builtin>.tuple
    - messages.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fileobj.read
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 2
    IfCount: 7
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4ec8c4c0>
    argNames:
    - template_string
    - keywords
    - comment_tags
    - options
    - lineno
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 889
    functionName: babel.messages.extract.parse_template_string
    functionSourceFile: babel.messages.extract
    functionUses: 1
    functionsReached:
    - expression_contents.encode
    - typing.NamedTuple.value.find
    - line_join_re.sub
    - babel.messages.jslexer.indicates_division
    - options.get
    - value.strip
    - escaped.end
    - value.startswith
    - value.splitlines
    - babel.messages.jslexer.unquote_string
    - babel.messages.extract.parse_template_string
    - match.group
    - <builtin>.any
    - io.BytesIO
    - match.end
    - babel.messages.jslexer.tokenize
    - <builtin>.enumerate
    - line_re.findall
    - babel.messages.extract.extract_javascript
    - babel.messages.jslexer.get_rules
    - <builtin>.len
    - uni_escape_re.match
    - <builtin>.int
    - hex_escape_re.match
    - textwrap.dedent
    - textwrap.dedent.splitlines
    - <builtin>.chr
    - typing.NamedTuple.__init__
    - translator_comments.append
    - rule.match
    - fileobj.read
    - escaped.group
    - <builtin>.tuple
    - rules.append
    - messages.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: value.strip
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: value.splitlines
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: textwrap.dedent
    functionSourceFile: textwrap
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: textwrap.dedent.splitlines
    functionSourceFile: textwrap
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: expression_contents.encode
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: io.BytesIO
    functionSourceFile: io
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: babel.messages.mofile
    functionSourceFile: babel.messages.mofile
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 1
    IfCount: 9
    argCount: 1
    argDefaultValues: []
    argNames:
    - fileobj
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 26
    functionName: babel.messages.mofile.read_mo
    functionSourceFile: babel.messages.mofile
    functionUses: 0
    functionsReached:
    - headers.items
    - msg.split
    - msg.decode
    - <builtin>.getattr
    - tmsg.decode
    - dict.fromkeys
    - struct.unpack
    - tmsg.split
    - value.strip
    - item.split
    - <builtin>.isinstance
    - babel.messages.catalog.Message.__init__
    - <builtin>.len
    - babel.messages.catalog.Catalog.__init__
    - revision_date.replace
    - x.decode
    - item.strip
    - <builtin>.set
    - <builtin>.list
    - fileobj.read
    - key.strip
    - creation_date.replace
    - <builtin>.range
    - tmsg.splitlines
    - datetime.datetime.now
    linkageType: pythonLinkage
    raised:
    - OSError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: struct.unpack
    functionSourceFile: struct
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tmsg.splitlines
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: item.strip
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: item.split
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: key.strip
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: msg.split
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tmsg.split
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: x.decode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: msg.decode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tmsg.decode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: headers.items
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: messages.sort
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: msgid.encode
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: msgstrs.append
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: msgstr.encode
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: message.id.encode
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: message.string.encode
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: message.context.encode
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: offsets.append
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: struct.pack
    functionSourceFile: struct
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: array.array
    functionSourceFile: array
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: array.array.tobytes
    functionSourceFile: array
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fileobj.write
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: babel.messages.pofile
    functionSourceFile: babel.messages.pofile
    functionUses: 0
    functionsReached:
    - re.compile
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - string
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 32
    functionName: babel.messages.pofile.unescape
    functionSourceFile: babel.messages.pofile
    functionUses: 1
    functionsReached:
    - _unescape_re.sub
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - match
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 43
    functionName: babel.messages.pofile.unescape.replace_escapes
    functionSourceFile: babel.messages.pofile
    functionUses: 0
    functionsReached:
    - match.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _unescape_re.sub
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - string
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 59
    functionName: babel.messages.pofile.denormalize
    functionSourceFile: babel.messages.pofile
    functionUses: 0
    functionsReached:
    - string.startswith
    - _unescape_re.sub
    - <builtin>.map
    - string.splitlines
    - babel.messages.pofile.unescape
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: string.splitlines
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: string.startswith
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 2
    IfCount: 8
    argCount: 1
    argDefaultValues: []
    argNames:
    - line
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 89
    functionName: babel.messages.pofile._extract_locations
    functionSourceFile: babel.messages.pofile
    functionUses: 8
    functionsReached:
    - locations.append
    - line.lstrip
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line.lstrip
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: locations.append
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - message
    - catalog
    - line
    - lineno
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 142
    functionName: babel.messages.pofile.PoFileError.__init__
    functionSourceFile: babel.messages.pofile
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - args
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 150
    functionName: babel.messages.pofile._NormalizedString.__init__
    functionSourceFile: babel.messages.pofile
    functionUses: 9
    functionsReached:
    - <builtin>.map
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 153
    functionName: babel.messages.pofile._NormalizedString.denormalize
    functionSourceFile: babel.messages.pofile
    functionUses: 12
    functionsReached:
    - <builtin>.map
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e4ffe80>
    - <ast.Constant object at 0x7f1b4e4ff670>
    argNames:
    - self
    - catalog
    - ignore_obsolete
    - abort_invalid
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 166
    functionName: babel.messages.pofile.PoFileParser.__init__
    functionSourceFile: babel.messages.pofile
    functionUses: 6
    functionsReached:
    - babel.messages.pofile.PoFileParser._reset_message_state
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 179
    functionName: babel.messages.pofile.PoFileParser._reset_message_state
    functionSourceFile: ''
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 192
    functionName: babel.messages.pofile.PoFileParser._add_message
    functionSourceFile: babel.messages.pofile
    functionUses: 11
    functionsReached:
    - m.denormalize
    - <builtin>.set
    - <builtin>.list
    - <builtin>.tuple
    - babel.messages.catalog.Catalog._key_for
    - babel.messages.catalog.Message.__init__
    - babel.messages.pofile.PoFileParser._invalid_pofile
    - translation.denormalize
    - dict.fromkeys
    - <builtin>.len
    - <builtin>.range
    - babel.messages.pofile._NormalizedString.denormalize
    - <builtin>.map
    - <builtin>.print
    - <builtin>.isinstance
    - <builtin>.sorted
    - babel.messages.pofile.PoFileParser._reset_message_state
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: m.denormalize
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - line
    - lineno
    - msg
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 374
    functionName: babel.messages.pofile.PoFileParser._invalid_pofile
    functionSourceFile: babel.messages.pofile
    functionUses: 13
    functionsReached:
    - <builtin>.print
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - PoFileError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: translation.denormalize
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 232
    functionName: babel.messages.pofile.PoFileParser._finish_current_message
    functionSourceFile: babel.messages.pofile
    functionUses: 10
    functionsReached:
    - m.denormalize
    - <builtin>.set
    - <builtin>.list
    - <builtin>.tuple
    - babel.messages.catalog.Catalog._key_for
    - babel.messages.catalog.Message.__init__
    - babel.messages.pofile.PoFileParser._invalid_pofile
    - <builtin>.len
    - translation.denormalize
    - babel.messages.pofile.PoFileParser._add_message
    - <builtin>.print
    - dict.fromkeys
    - <builtin>.range
    - babel.messages.pofile._NormalizedString.denormalize
    - <builtin>.map
    - <builtin>.isinstance
    - <builtin>.sorted
    - babel.messages.pofile.PoFileParser._reset_message_state
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e6a3e20>
    argNames:
    - self
    - lineno
    - line
    - obsolete
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 243
    functionName: babel.messages.pofile.PoFileParser._process_message_line
    functionSourceFile: babel.messages.pofile
    functionUses: 7
    functionsReached:
    - keyword.partition
    - line.partition
    - babel.messages.pofile._NormalizedString.__init__
    - translation.denormalize
    - dict.fromkeys
    - <builtin>.super
    - keyword.startswith
    - s.append
    - babel.messages.pofile.PoFileParser._invalid_pofile
    - babel.messages.pofile._NormalizedString.denormalize
    - <builtin>.isinstance
    - babel.messages.pofile.PoFileParser._finish_current_message
    - m.denormalize
    - babel.messages.catalog.Catalog._key_for
    - babel.messages.catalog.Message.__init__
    - <builtin>.len
    - <builtin>.print
    - <builtin>.int
    - babel.messages.pofile.PoFileParser._process_string_continuation_line
    - <builtin>.sorted
    - babel.messages.pofile.PoFileParser._process_keyword_line
    - babel.messages.pofile.PoFileParser._reset_message_state
    - <builtin>.set
    - <builtin>.list
    - <builtin>.map
    - babel.messages.pofile.PoFileParser._add_message
    - <builtin>.range
    - <builtin>.tuple
    - line.strip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - line
    - lineno
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 286
    functionName: babel.messages.pofile.PoFileParser._process_string_continuation_line
    functionSourceFile: babel.messages.pofile
    functionUses: 8
    functionsReached:
    - babel.messages.pofile.PoFileParser._invalid_pofile
    - <builtin>.print
    - <builtin>.isinstance
    - s.append
    - line.strip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 4
    IfCount: 5
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e6a3b20>
    argNames:
    - self
    - lineno
    - line
    - obsolete
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 251
    functionName: babel.messages.pofile.PoFileParser._process_keyword_line
    functionSourceFile: babel.messages.pofile
    functionUses: 8
    functionsReached:
    - keyword.partition
    - line.partition
    - babel.messages.pofile._NormalizedString.__init__
    - dict.fromkeys
    - translation.denormalize
    - <builtin>.super
    - keyword.startswith
    - babel.messages.pofile.PoFileParser._invalid_pofile
    - babel.messages.pofile._NormalizedString.denormalize
    - <builtin>.isinstance
    - babel.messages.pofile.PoFileParser._finish_current_message
    - m.denormalize
    - babel.messages.catalog.Catalog._key_for
    - babel.messages.catalog.Message.__init__
    - <builtin>.len
    - <builtin>.print
    - <builtin>.int
    - <builtin>.sorted
    - babel.messages.pofile.PoFileParser._reset_message_state
    - <builtin>.set
    - <builtin>.list
    - <builtin>.map
    - babel.messages.pofile.PoFileParser._add_message
    - <builtin>.range
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line.partition
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: keyword.startswith
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: keyword.partition
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line.strip
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: s.append
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 6
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - line
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 303
    functionName: babel.messages.pofile.PoFileParser._process_comment
    functionSourceFile: babel.messages.pofile
    functionUses: 7
    functionsReached:
    - flag.strip
    - babel.messages.pofile._extract_locations
    - dict.fromkeys
    - translation.denormalize
    - locations.append
    - babel.messages.pofile.PoFileParser._invalid_pofile
    - babel.messages.pofile._NormalizedString.denormalize
    - <builtin>.isinstance
    - babel.messages.pofile.PoFileParser._finish_current_message
    - line.lstrip
    - m.denormalize
    - babel.messages.catalog.Catalog._key_for
    - babel.messages.catalog.Message.__init__
    - <builtin>.len
    - <builtin>.print
    - <builtin>.int
    - <builtin>.sorted
    - babel.messages.pofile.PoFileParser._reset_message_state
    - <builtin>.set
    - <builtin>.list
    - <builtin>.map
    - babel.messages.pofile.PoFileParser._add_message
    - <builtin>.range
    - <builtin>.tuple
    - location.rpartition
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: location.rpartition
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: flag.strip
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 9
    IfCount: 6
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - fileobj
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 333
    functionName: babel.messages.pofile.PoFileParser.parse
    functionSourceFile: babel.messages.pofile
    functionUses: 6
    functionsReached:
    - flag.strip
    - keyword.partition
    - babel.messages.pofile._extract_locations
    - line.partition
    - babel.messages.pofile._NormalizedString.__init__
    - translation.denormalize
    - dict.fromkeys
    - <builtin>.super
    - locations.append
    - keyword.startswith
    - s.append
    - <builtin>.str
    - line.decode
    - babel.messages.pofile.PoFileParser._invalid_pofile
    - babel.messages.pofile._NormalizedString.denormalize
    - <builtin>.isinstance
    - babel.messages.pofile.PoFileParser._finish_current_message
    - <builtin>.enumerate
    - line.lstrip
    - m.denormalize
    - babel.messages.catalog.Catalog._key_for
    - babel.messages.catalog.Message.__init__
    - <builtin>.len
    - <builtin>.print
    - <builtin>.int
    - babel.messages.pofile.PoFileParser._process_message_line
    - babel.messages.pofile.PoFileParser._process_string_continuation_line
    - <builtin>.sorted
    - babel.messages.pofile.PoFileParser._reset_message_state
    - babel.messages.pofile.PoFileParser._process_keyword_line
    - <builtin>.set
    - <builtin>.list
    - <builtin>.map
    - babel.messages.pofile.PoFileParser._add_message
    - <builtin>.range
    - <builtin>.tuple
    - babel.messages.pofile.PoFileParser._process_comment
    - location.rpartition
    - line.strip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line.decode
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - string
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 451
    functionName: babel.messages.pofile.escape
    functionSourceFile: babel.messages.pofile
    functionUses: 8
    functionsReached:
    - string.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 6
    IfCount: 6
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e4ba100>
    - <ast.Constant object at 0x7f1b4e4bafd0>
    argNames:
    - string
    - prefix
    - width
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 468
    functionName: babel.messages.pofile.normalize
    functionSourceFile: babel.messages.pofile
    functionUses: 7
    functionsReached:
    - buf.append
    - lines.append
    - babel.messages.pofile.escape
    - chunks.pop
    - <builtin>.len
    - string.splitlines
    - chunks.reverse
    - string.replace
    - WORD_SEP.split
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: WORD_SEP.split
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: chunks.reverse
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: chunks.pop
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: lines.append
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - filename
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 529
    functionName: babel.messages.pofile._enclose_filename_if_necessary
    functionSourceFile: babel.messages.pofile
    functionUses: 6
    functionsReached:
    - filename.startswith
    - filename.endswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: filename.startswith
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: filename.endswith
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 14
    IfCount: 10
    argCount: 8
    argDefaultValues: []
    argNames:
    - catalog
    - ignore_obsolete
    - include_lineno
    - include_previous
    - no_location
    - omit_header
    - sort_by
    - width
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 623
    functionName: babel.messages.pofile.generate_po
    functionSourceFile: babel.messages.pofile
    functionUses: 5
    functionsReached:
    - buf.append
    - filename.replace
    - comment_header.splitlines
    - WORD_SEP.split
    - lines.append
    - textwrap.TextWrapper.wrap
    - <builtin>.isinstance
    - chunks.reverse
    - catalog.obsolete.values
    - babel.messages.pofile._sort_messages
    - textwrap.TextWrapper.__init__
    - filename.startswith
    - locs.append
    - <builtin>.len
    - filename.endswith
    - string.splitlines
    - <builtin>.sorted
    - messages.sort
    - babel.messages.pofile.generate_po._format_comment
    - babel.messages.pofile.generate_po._format_message
    - babel.messages.pofile.escape
    - <builtin>.list
    - chunks.pop
    - <builtin>.range
    - babel.messages.pofile._enclose_filename_if_necessary
    - babel.messages.pofile.normalize
    - string.replace
    - line.strip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line.encode
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e7974f0>
    argNames:
    - comment
    - prefix
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 645
    functionName: babel.messages.pofile.generate_po._format_comment
    functionSourceFile: babel.messages.pofile
    functionUses: 6
    functionsReached:
    - line.strip
    - textwrap.TextWrapper.wrap
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 7
    IfCount: 3
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f1b4e7972b0>
    argNames:
    - message
    - prefix
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 649
    functionName: babel.messages.pofile.generate_po._format_message
    functionSourceFile: babel.messages.pofile
    functionUses: 6
    functionsReached:
    - buf.append
    - lines.append
    - babel.messages.pofile.escape
    - chunks.pop
    - <builtin>.len
    - <builtin>.range
    - string.splitlines
    - <builtin>.isinstance
    - chunks.reverse
    - babel.messages.pofile.normalize
    - string.replace
    - WORD_SEP.split
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - messages
    - sort_by
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 734
    functionName: babel.messages.pofile._sort_messages
    functionSourceFile: babel.messages.pofile
    functionUses: 6
    functionsReached:
    - <builtin>.list
    - messages.sort
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: comment_header.splitlines
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: babel.messages.pofile.generate_po.<lambda1>
    functionSourceFile: babel.messages.pofile
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: filename.replace
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: locs.append
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: catalog.obsolete.values
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: babel.messages.pofile._sort_messages.<lambda1>
    functionSourceFile: babel.messages.pofile
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  Function list name: All functions
Function coverage:
  '...fuzz_lexer':
  - 42
  - 43
  '...fuzz_lexer.TestOneInput':
  - 25
  - 23
  '...fuzz_lexer.main':
  - 37
  - 38
  - 39
  babel:
  - 1
  babel.core:
  - 32
  - 1
  - 57
  babel.core.Locale:
  - 512
  - 577
  - 560
  - 147
  - 543
  babel.core.Locale.__eq__:
  - 448
  - 449
  - 441
  - 442
  - 445
  - 446
  - 447
  babel.core.Locale.__hash__:
  - 456
  babel.core.Locale.__init__:
  - 186
  - 214
  - 215
  - 216
  - 218
  babel.core.Locale.__ne__:
  - 453
  babel.core.Locale.__repr__:
  - 460
  - 461
  - 462
  - 463
  - 464
  babel.core.Locale.__str__:
  - 467
  babel.core.Locale._data:
  - 473
  - 474
  babel.core.Locale.character_order:
  - 1078
  babel.core.Locale.compact_currency_formats:
  - 751
  babel.core.Locale.compact_decimal_formats:
  - 725
  babel.core.Locale.currencies:
  - 650
  babel.core.Locale.currency_formats:
  - 737
  babel.core.Locale.currency_symbols:
  - 664
  babel.core.Locale.date_formats:
  - 941
  babel.core.Locale.datetime_formats:
  - 969
  babel.core.Locale.datetime_skeletons:
  - 983
  babel.core.Locale.day_period_rules:
  - 809
  - 810
  babel.core.Locale.day_periods:
  - 801
  babel.core.Locale.days:
  - 814
  babel.core.Locale.decimal_formats:
  - 713
  babel.core.Locale.default:
  - 249
  - 250
  - 229
  babel.core.Locale.default_numbering_system:
  - 705
  babel.core.Locale.english_name:
  - 597
  - 589
  babel.core.Locale.eras:
  - 841
  babel.core.Locale.first_week_day:
  - 902
  babel.core.Locale.get_display_name:
  - 493
  - 495
  - 496
  - 497
  - 499
  - 500
  - 501
  - 502
  - 503
  - 504
  - 505
  - 506
  - 507
  - 508
  - 478
  babel.core.Locale.get_language_name:
  - 529
  - 538
  - 540
  - 541
  babel.core.Locale.get_script_name:
  - 571
  - 572
  - 574
  - 575
  babel.core.Locale.get_territory_name:
  - 554
  - 555
  - 557
  - 558
  babel.core.Locale.interval_formats:
  - 996
  babel.core.Locale.languages:
  - 603
  babel.core.Locale.list_patterns:
  - 1033
  babel.core.Locale.measurement_systems:
  - 1066
  babel.core.Locale.meta_zones:
  - 869
  babel.core.Locale.min_week_days:
  - 931
  babel.core.Locale.months:
  - 823
  babel.core.Locale.negotiate:
  - 280
  - 281
  - 282
  - 260
  babel.core.Locale.number_symbols:
  - 675
  babel.core.Locale.ordinal_form:
  - 1049
  - 1062
  babel.core.Locale.other_numbering_systems:
  - 691
  babel.core.Locale.parse:
  - 384
  - 385
  - 387
  - 397
  - 402
  - 403
  - 404
  - 405
  - 407
  - 409
  - 415
  - 416
  - 417
  - 418
  - 419
  - 292
  - 424
  - 425
  - 426
  - 427
  - 432
  - 435
  - 346
  - 349
  - 356
  - 361
  - 364
  - 365
  babel.core.Locale.parse._try_load:
  - 369
  babel.core.Locale.parse._try_load_reducing:
  - 376
  - 380
  - 381
  - 375
  babel.core.Locale.percent_formats:
  - 763
  babel.core.Locale.periods:
  - 797
  - 789
  babel.core.Locale.plural_form:
  - 1018
  - 1029
  babel.core.Locale.quarters:
  - 832
  babel.core.Locale.scientific_formats:
  - 775
  babel.core.Locale.scripts:
  - 615
  babel.core.Locale.territories:
  - 627
  babel.core.Locale.text_direction:
  - 1096
  - 1089
  babel.core.Locale.time_formats:
  - 955
  babel.core.Locale.time_zones:
  - 855
  babel.core.Locale.unit_display_names:
  - 1100
  babel.core.Locale.variants:
  - 639
  babel.core.Locale.weekend_end:
  - 922
  babel.core.Locale.weekend_start:
  - 913
  babel.core.Locale.zone_formats:
  - 886
  babel.core.UnknownLocaleError:
  - 131
  babel.core.UnknownLocaleError.__init__:
  - 136
  - 140
  babel.core.default_locale:
  - 1153
  - 1154
  - 1156
  - 1157
  - 1158
  - 1161
  - 1162
  - 1164
  - 1167
  - 1145
  - 1146
  - 1148
  - 1117
  babel.core.get_cldr_version:
  - 1384
  - 1372
  babel.core.get_global:
  - 72
  - 107
  - 108
  - 109
  - 110
  - 111
  - 112
  - 113
  - 115
  babel.core.get_locale_identifier:
  - 1366
  - 1365
  - 1350
  - 1367
  babel.core.negotiate_locale:
  - 1224
  - 1225
  - 1226
  - 1227
  - 1229
  - 1230
  - 1231
  - 1232
  - 1233
  - 1235
  - 1236
  - 1179
  babel.core.parse_locale:
  - 1302
  - 1304
  - 1305
  - 1307
  - 1309
  - 1310
  - 1311
  - 1315
  - 1316
  - 1318
  - 1319
  - 1320
  - 1321
  - 1322
  - 1324
  - 1325
  - 1326
  - 1327
  - 1328
  - 1330
  - 1332
  - 1336
  - 1248
  babel.dates:
  - 1
  - 59
  - 1806
  - 39
  babel.dates.DateTimeFormat.__getitem__:
  - 1443
  - 1444
  - 1445
  - 1446
  - 1447
  - 1448
  - 1449
  - 1450
  - 1451
  - 1452
  - 1453
  - 1454
  - 1455
  - 1456
  - 1457
  - 1458
  - 1459
  - 1460
  - 1461
  - 1462
  - 1463
  - 1464
  - 1465
  - 1466
  - 1468
  - 1469
  - 1470
  - 1471
  - 1472
  - 1473
  - 1474
  - 1475
  - 1477
  - 1478
  - 1479
  - 1480
  - 1481
  - 1482
  - 1483
  - 1484
  - 1485
  - 1486
  - 1487
  babel.dates.DateTimeFormat.__init__:
  - 1434
  - 1435
  - 1436
  - 1438
  babel.dates.DateTimeFormat.extract:
  - 1505
  - 1506
  - 1492
  - 1493
  - 1495
  - 1497
  - 1499
  - 1501
  - 1503
  babel.dates.DateTimeFormat.format_day_of_week_in_month:
  - 1595
  babel.dates.DateTimeFormat.format_day_of_year:
  - 1592
  babel.dates.DateTimeFormat.format_era:
  - 1513
  - 1514
  - 1515
  babel.dates.DateTimeFormat.format_frac_seconds:
  - 1649
  - 1643
  babel.dates.DateTimeFormat.format_milliseconds_in_day:
  - 1658
  babel.dates.DateTimeFormat.format_month:
  - 1539
  - 1543
  babel.dates.DateTimeFormat.format_period:
  - 1634
  - 1636
  - 1637
  - 1638
  - 1630
  - 1625
  - 1598
  babel.dates.DateTimeFormat.format_quarter:
  - 1536
  - 1532
  babel.dates.DateTimeFormat.format_timezone:
  - 1667
  - 1668
  - 1670
  - 1671
  - 1672
  - 1673
  - 1674
  - 1675
  - 1676
  - 1677
  - 1678
  - 1680
  - 1681
  - 1682
  - 1683
  - 1684
  - 1685
  - 1686
  - 1687
  - 1688
  - 1689
  - 1690
  - 1692
  - 1694
  - 1696
  - 1698
  - 1661
  babel.dates.DateTimeFormat.format_week:
  - 1546
  - 1547
  - 1548
  - 1550
  - 1551
  babel.dates.DateTimeFormat.format_weekday:
  - 1581
  - 1582
  - 1583
  - 1584
  - 1554
  - 1586
  - 1589
  babel.dates.DateTimeFormat.format_year:
  - 1519
  - 1521
  - 1523
  - 1525
  - 1526
  babel.dates.DateTimeFormat.get_day_of_year:
  - 1704
  - 1706
  babel.dates.DateTimeFormat.get_week_number:
  - 1729
  - 1747
  - 1748
  - 1750
  - 1753
  babel.dates.DateTimeFormat.get_week_of_month:
  - 1725
  - 1726
  babel.dates.DateTimeFormat.get_week_of_year:
  - 1709
  - 1710
  - 1711
  - 1712
  - 1713
  - 1714
  - 1715
  - 1716
  - 1717
  - 1718
  babel.dates.DateTimePattern.__mod__:
  - 1414
  babel.dates.DateTimePattern.__repr__:
  - 1407
  babel.dates.DateTimePattern.apply:
  - 1424
  babel.dates._cached_parse_pattern:
  - 1810
  - 1811
  - 1812
  - 1813
  - 1816
  - 1818
  - 1821
  babel.dates._ensure_datetime_tzinfo:
  - 192
  - 193
  - 194
  - 169
  - 189
  - 190
  - 191
  babel.dates._format_fallback_interval:
  - 1057
  - 1058
  - 1060
  - 1061
  - 1064
  - 1040
  - 1041
  - 1042
  - 1044
  - 1047
  - 1048
  - 1050
  - 1053
  - 1055
  babel.dates._format_fallback_interval.<lambda1>:
  - 1041
  babel.dates._format_fallback_interval.<lambda2>:
  - 1047
  babel.dates._format_fallback_interval.<lambda3>:
  - 1053
  babel.dates._format_fallback_interval.<lambda4>:
  - 1055
  babel.dates._get_datetime:
  - 160
  - 155
  - 153
  - 154
  - 123
  - 156
  - 157
  - 158
  - 159
  babel.dates._get_dt_and_tzinfo:
  - 98
  - 99
  - 82
  - 89
  - 90
  - 92
  - 94
  - 95
  babel.dates._get_time:
  - 224
  - 225
  - 202
  - 210
  - 211
  - 212
  - 213
  - 215
  - 216
  - 218
  - 219
  - 220
  - 221
  - 222
  - 223
  babel.dates._get_tz_name:
  - 108
  - 113
  - 114
  - 116
  - 119
  babel.dates._localize:
  - 65
  - 68
  - 69
  - 71
  - 73
  - 76
  babel.dates.format_date:
  - 715
  - 716
  - 717
  - 718
  - 720
  - 721
  - 722
  - 723
  - 724
  - 694
  babel.dates.format_datetime:
  - 756
  - 758
  - 759
  - 761
  - 763
  - 764
  - 733
  - 767
  babel.dates.format_interval:
  - 1152
  - 1153
  - 1160
  - 1161
  - 1164
  - 1165
  - 1166
  - 1171
  - 1078
  - 1119
  - 1130
  - 1136
  - 1137
  - 1140
  - 1142
  - 1146
  - 1147
  - 1149
  - 1150
  babel.dates.format_skeleton:
  - 851
  - 887
  - 888
  - 889
  - 891
  babel.dates.format_time:
  - 834
  - 836
  - 838
  - 839
  - 776
  - 840
  - 841
  babel.dates.format_timedelta:
  - 1026
  - 1028
  - 921
  - 976
  - 978
  - 979
  - 985
  - 986
  - 989
  - 1012
  - 1013
  - 1014
  - 1015
  - 1016
  - 1017
  - 1018
  - 1020
  - 1021
  - 1022
  - 1023
  babel.dates.format_timedelta._iter_patterns:
  - 994
  - 997
  - 998
  - 999
  - 1001
  - 1003
  - 1004
  - 1009
  - 1010
  babel.dates.get_date_format:
  - 376
  - 364
  babel.dates.get_datetime_format:
  - 393
  - 394
  - 383
  babel.dates.get_day_names:
  - 298
  - 283
  babel.dates.get_era_names:
  - 347
  - 357
  babel.dates.get_month_names:
  - 306
  - 319
  babel.dates.get_period_id:
  - 1180
  - 1203
  - 1204
  - 1205
  - 1209
  - 1211
  - 1212
  - 1213
  - 1216
  - 1217
  - 1218
  - 1219
  - 1220
  - 1224
  - 1232
  - 1234
  - 1238
  - 1240
  - 1243
  - 1246
  babel.dates.get_period_names:
  - 266
  - 275
  babel.dates.get_quarter_names:
  - 340
  - 327
  babel.dates.get_time_format:
  - 403
  - 415
  babel.dates.get_timezone:
  - 230
  - 241
  - 243
  - 246
  - 248
  - 254
  babel.dates.get_timezone_gmt:
  - 424
  - 459
  - 460
  - 462
  - 464
  - 465
  - 467
  - 469
  - 471
  babel.dates.get_timezone_location:
  - 545
  - 546
  - 483
  - 547
  - 517
  - 549
  - 519
  - 550
  - 552
  - 522
  - 554
  - 524
  - 529
  - 530
  - 533
  - 536
  - 542
  babel.dates.get_timezone_name:
  - 643
  - 644
  - 646
  - 648
  - 649
  - 652
  - 655
  - 659
  - 660
  - 662
  - 664
  - 666
  - 669
  - 670
  - 671
  - 672
  - 673
  - 674
  - 677
  - 678
  - 683
  - 684
  - 686
  - 573
  babel.dates.match_skeleton:
  - 1957
  - 1991
  - 1993
  - 1994
  - 1995
  - 1996
  - 1997
  - 1998
  - 1999
  - 2000
  - 2001
  - 2002
  - 2004
  - 2007
  - 2008
  - 2010
  - 2011
  - 2012
  - 2013
  - 2015
  - 2016
  - 2021
  - 2027
  - 2029
  - 2033
  - 2037
  babel.dates.parse_date:
  - 1292
  - 1293
  - 1299
  - 1304
  - 1306
  - 1310
  - 1311
  - 1313
  - 1314
  - 1315
  - 1316
  - 1317
  - 1318
  - 1319
  - 1321
  - 1322
  - 1328
  - 1329
  - 1330
  - 1331
  - 1333
  - 1261
  babel.dates.parse_pattern:
  - 1801
  - 1803
  - 1781
  babel.dates.parse_time:
  - 1341
  - 1362
  - 1363
  - 1367
  - 1368
  - 1370
  - 1371
  - 1372
  - 1373
  - 1374
  - 1375
  - 1377
  - 1380
  - 1381
  - 1388
  - 1393
  - 1394
  - 1395
  - 1396
  - 1397
  - 1398
  babel.dates.split_interval_pattern:
  - 1947
  - 1938
  - 1941
  - 1942
  - 1943
  - 1944
  - 1945
  - 1946
  - 1915
  - 1949
  babel.dates.tokenize_pattern:
  - 1825
  - 1855
  - 1856
  - 1857
  - 1858
  - 1859
  - 1860
  - 1861
  - 1863
  - 1864
  - 1865
  - 1866
  - 1869
  - 1870
  - 1874
  - 1875
  - 1876
  - 1878
  - 1879
  - 1880
  - 1883
  - 1885
  - 1886
  - 1887
  - 1888
  babel.dates.tokenize_pattern.append_chars:
  - 1847
  babel.dates.tokenize_pattern.append_field:
  - 1851
  babel.dates.untokenize_pattern:
  - 1894
  - 1903
  - 1904
  - 1905
  - 1906
  - 1907
  - 1908
  - 1910
  - 1911
  babel.languages.get_official_languages:
  - 33
  - 35
  - 36
  - 37
  - 38
  - 40
  - 11
  - 43
  - 44
  - 46
  - 47
  babel.languages.get_territory_language_info:
  - 77
  - 53
  - 78
  babel.lists:
  - 1
  - 25
  babel.lists.__getattr__:
  - 29
  - 30
  babel.lists._resolve_list_style:
  - 136
  - 135
  babel.lists.format_list:
  - 97
  - 98
  - 100
  - 103
  - 105
  - 106
  - 108
  - 109
  - 110
  - 111
  - 52
  babel.localedata:
  - 1
  - 78
  - 28
  - 29
  - 30
  babel.localedata.Alias:
  - 210
  babel.localedata.Alias.__init__:
  - 217
  babel.localedata.Alias.__repr__:
  - 220
  babel.localedata.Alias.resolve:
  - 232
  - 234
  - 235
  - 236
  - 238
  - 223
  babel.localedata.LocaleDataDict:
  - 243
  babel.localedata.LocaleDataDict.__getitem__:
  - 265
  - 266
  - 267
  - 269
  - 270
  - 271
  - 272
  - 273
  babel.localedata.LocaleDataDict.__init__:
  - 253
  babel.localedata.LocaleDataDict.__iter__:
  - 261
  babel.localedata.LocaleDataDict.__len__:
  - 258
  babel.localedata.LocaleDataDict.copy:
  - 284
  babel.localedata._is_non_likely_script:
  - 100
  - 109
  - 113
  - 114
  - 115
  babel.localedata.exists:
  - 64
  - 70
  - 72
  - 74
  - 75
  babel.localedata.load:
  - 161
  - 162
  - 163
  - 164
  - 165
  - 166
  - 167
  - 169
  - 173
  - 145
  - 146
  - 148
  - 149
  - 151
  - 121
  - 156
  - 157
  - 158
  babel.localedata.locale_identifiers:
  - 80
  - 93
  babel.localedata.merge:
  - 192
  - 194
  - 196
  - 198
  - 199
  - 202
  - 203
  - 177
  - 188
  - 189
  - 190
  - 191
  babel.localedata.normalize_locale:
  - 34
  - 39
  - 41
  - 42
  - 43
  babel.localedata.resolve_locale_filename:
  - 48
  - 56
  - 60
  - 53
  babel.localtime:
  - 1
  - 43
  - 41
  - 15
  babel.localtime._fallback:
  - 1
  - 18
  - 14
  - 15
  babel.localtime._fallback._FallbackLocalTimezone._isdst:
  - 40
  - 41
  - 42
  babel.localtime._fallback._FallbackLocalTimezone.dst:
  - 29
  babel.localtime._fallback._FallbackLocalTimezone.tzname:
  - 35
  babel.localtime._fallback._FallbackLocalTimezone.utcoffset:
  - 23
  babel.localtime._helpers._get_tzinfo:
  - 34
  - 13
  - 18
  - 20
  - 25
  babel.localtime._helpers._get_tzinfo_from_file:
  - 57
  - 53
  - 54
  - 55
  babel.localtime._helpers._get_tzinfo_or_raise:
  - 43
  - 44
  babel.localtime._unix._get_localzone:
  - 25
  - 34
  - 35
  - 36
  - 42
  - 46
  - 47
  - 54
  - 55
  - 56
  - 61
  - 62
  - 63
  - 64
  - 68
  - 69
  - 71
  - 72
  - 73
  - 74
  - 76
  - 82
  - 84
  - 85
  - 86
  - 88
  - 89
  - 90
  - 91
  - 93
  - 94
  - 97
  - 98
  - 100
  - 102
  babel.localtime._unix._tz_from_env:
  - 17
  - 18
  - 21
  - 13
  babel.localtime._win32:
  - 19
  babel.localtime._win32._get_localzone:
  - 97
  - 94
  babel.localtime._win32.get_localzone_name:
  - 40
  - 43
  - 44
  - 45
  - 46
  - 52
  - 61
  - 65
  - 66
  - 67
  - 68
  - 69
  - 70
  - 74
  - 75
  - 77
  - 80
  - 81
  - 84
  - 87
  babel.localtime._win32.valuestodict:
  - 25
  - 27
  - 28
  - 29
  babel.localtime.get_localzone:
  - 33
  - 37
  babel.messages:
  - 1
  babel.messages._compat.find_entrypoints:
  - 33
  - 34
  - 6
  - 13
  - 20
  - 23
  - 24
  - 25
  babel.messages.catalog:
  - 1
  - 29
  - 71
  babel.messages.catalog.Catalog:
  - 484
  - 361
  - 462
  - 591
  - 463
  babel.messages.catalog.Catalog.__contains__:
  - 696
  - 697
  babel.messages.catalog.Catalog.__delitem__:
  - 728
  - 727
  babel.messages.catalog.Catalog.__getitem__:
  - 731
  - 735
  babel.messages.catalog.Catalog.__init__:
  - 416
  - 417
  - 418
  - 419
  - 421
  - 423
  - 424
  - 410
  - 379
  - 412
  babel.messages.catalog.Catalog.__iter__:
  - 706
  - 711
  - 712
  - 713
  - 714
  - 716
  - 717
  - 718
  babel.messages.catalog.Catalog.__len__:
  - 700
  - 703
  babel.messages.catalog.Catalog.__repr__:
  - 722
  - 724
  babel.messages.catalog.Catalog.__setitem__:
  - 768
  - 769
  - 738
  - 771
  - 773
  - 774
  - 777
  - 778
  - 779
  - 759
  - 760
  - 761
  - 762
  - 763
  - 767
  babel.messages.catalog.Catalog._get_header_comment:
  - 467
  - 468
  - 469
  - 471
  - 477
  - 478
  babel.messages.catalog.Catalog._get_mime_headers:
  - 544
  - 545
  - 546
  - 522
  - 523
  - 532
  - 533
  - 538
  - 542
  - 543
  babel.messages.catalog.Catalog._key_for:
  - 1041
  - 1034
  - 1039
  babel.messages.catalog.Catalog._set_locale:
  - 434
  - 439
  - 440
  - 444
  - 445
  - 447
  babel.messages.catalog.Catalog._set_mime_headers:
  - 556
  - 557
  - 558
  - 559
  - 560
  - 561
  - 563
  - 565
  - 567
  - 568
  - 573
  - 574
  - 576
  - 577
  - 578
  - 579
  - 580
  - 581
  - 582
  - 583
  - 584
  - 585
  - 586
  - 588
  - 589
  babel.messages.catalog.Catalog._to_fuzzy_match_key:
  - 1027
  - 1022
  - 1023
  babel.messages.catalog.Catalog.add:
  - 795
  - 820
  - 823
  babel.messages.catalog.Catalog.check:
  - 835
  - 843
  - 844
  - 845
  - 846
  babel.messages.catalog.Catalog.delete:
  - 857
  - 862
  - 863
  babel.messages.catalog.Catalog.get:
  - 849
  - 854
  babel.messages.catalog.Catalog.is_identical:
  - 1046
  - 1049
  - 1050
  - 1051
  - 1052
  - 1053
  - 1055
  babel.messages.catalog.Catalog.num_plurals:
  - 649
  - 657
  - 659
  - 660
  babel.messages.catalog.Catalog.plural_expr:
  - 666
  - 676
  - 678
  - 679
  babel.messages.catalog.Catalog.plural_forms:
  - 685
  babel.messages.catalog.Catalog.update:
  - 930
  - 935
  - 936
  - 937
  - 938
  - 940
  - 941
  - 984
  - 985
  - 986
  - 987
  - 988
  - 990
  - 992
  - 993
  - 994
  - 997
  - 1000
  - 874
  - 1002
  - 1007
  - 1008
  - 1011
  - 1018
  babel.messages.catalog.Catalog.update._merge:
  - 960
  - 964
  - 965
  - 967
  - 968
  - 970
  - 971
  - 973
  - 975
  - 976
  - 948
  - 980
  - 950
  - 952
  - 953
  - 955
  - 958
  babel.messages.catalog.Message:
  - 139
  babel.messages.catalog.Message.__cmp__:
  - 206
  - 199
  babel.messages.catalog.Message.__cmp__.values_to_compare:
  - 202
  babel.messages.catalog.Message.__eq__:
  - 221
  babel.messages.catalog.Message.__ge__:
  - 215
  babel.messages.catalog.Message.__gt__:
  - 209
  babel.messages.catalog.Message.__init__:
  - 185
  - 170
  - 173
  - 174
  - 175
  - 176
  - 178
  - 179
  - 180
  - 182
  - 183
  - 184
  - 153
  - 186
  - 189
  babel.messages.catalog.Message.__le__:
  - 218
  babel.messages.catalog.Message.__lt__:
  - 212
  babel.messages.catalog.Message.__ne__:
  - 224
  babel.messages.catalog.Message.__repr__:
  - 196
  babel.messages.catalog.Message.check:
  - 259
  - 263
  - 261
  - 247
  babel.messages.catalog.Message.clone:
  - 234
  - 235
  - 236
  - 237
  - 238
  - 239
  - 240
  - 241
  babel.messages.catalog.Message.fuzzy:
  - 268
  babel.messages.catalog.Message.is_identical:
  - 227
  - 230
  babel.messages.catalog.Message.pluralizable:
  - 291
  - 283
  babel.messages.catalog.Message.python_brace_format:
  - 322
  - 323
  - 324
  - 327
  - 313
  babel.messages.catalog.Message.python_format:
  - 295
  - 304
  - 305
  - 306
  - 309
  babel.messages.catalog.TranslationError:
  - 331
  babel.messages.catalog._force_text:
  - 353
  - 355
  - 356
  - 357
  babel.messages.catalog._has_python_brace_format:
  - 96
  - 89
  - 95
  - 87
  babel.messages.catalog._parse_datetime_header:
  - 128
  - 133
  - 106
  - 108
  - 111
  - 112
  - 117
  - 118
  - 119
  - 127
  babel.messages.catalog.get_close_matches:
  - 66
  - 44
  - 49
  - 51
  - 54
  - 55
  - 56
  - 57
  - 58
  - 59
  - 60
  - 61
  - 63
  babel.messages.catalog.parse_separated_header:
  - 347
  - 349
  babel.messages.checkers:
  - 176
  - 1
  babel.messages.checkers._find_checkers:
  - 168
  - 169
  babel.messages.checkers._validate_format:
  - 131
  - 67
  - 132
  - 133
  - 135
  - 140
  - 141
  - 143
  - 144
  - 157
  - 153
  - 154
  - 155
  - 124
  - 125
  - 127
  babel.messages.checkers._validate_format._check_positional:
  - 114
  - 115
  - 118
  - 122
  babel.messages.checkers._validate_format._compatible:
  - 105
  - 107
  - 108
  babel.messages.checkers._validate_format._parse:
  - 97
  - 98
  - 99
  - 101
  babel.messages.checkers.num_plurals:
  - 35
  - 39
  - 41
  - 28
  - 29
  - 30
  babel.messages.checkers.python_format:
  - 48
  - 49
  - 52
  - 55
  - 58
  - 59
  - 60
  - 61
  - 62
  - 63
  babel.messages.extract:
  - 1
  - 101
  - 102
  - 103
  - 44
  - 433
  babel.messages.extract._FileObj.seek:
  - 60
  babel.messages.extract._FileObj.tell:
  - 61
  babel.messages.extract._find_extractor:
  - 435
  - 436
  - 437
  babel.messages.extract._make_default_directory_filter:
  - 124
  babel.messages.extract._make_default_directory_filter.directory_filter:
  - 129
  - 132
  - 134
  - 135
  - 127
  babel.messages.extract._match_messages_against_spec:
  - 418
  - 419
  - 420
  - 426
  - 427
  - 398
  - 399
  - 400
  - 403
  - 407
  - 409
  - 412
  babel.messages.extract._parse_python_string:
  - 704
  - 705
  - 710
  - 712
  - 714
  - 715
  - 716
  babel.messages.extract._strip_comment_tags:
  - 107
  - 117
  babel.messages.extract._strip_comment_tags._strip:
  - 112
  - 113
  - 114
  babel.messages.extract.check_and_call_extract_file:
  - 323
  - 324
  - 330
  - 331
  - 335
  - 337
  - 338
  - 339
  - 308
  - 347
  - 310
  - 278
  - 315
  - 316
  - 311
  babel.messages.extract.default_directory_filter:
  - 144
  - 149
  - 151
  babel.messages.extract.extract:
  - 512
  - 517
  - 520
  - 521
  - 524
  - 529
  - 531
  - 532
  - 533
  - 449
  - 488
  - 490
  - 491
  - 492
  - 495
  - 496
  - 498
  - 499
  - 502
  - 504
  - 507
  - 509
  - 510
  babel.messages.extract.extract_from_dir:
  - 256
  - 164
  - 233
  - 234
  - 236
  - 239
  - 241
  - 242
  - 247
  - 249
  - 251
  - 252
  - 253
  - 254
  babel.messages.extract.extract_from_file:
  - 360
  - 378
  - 381
  - 382
  - 383
  babel.messages.extract.extract_javascript:
  - 772
  - 774
  - 776
  - 777
  - 781
  - 789
  - 790
  - 794
  - 795
  - 796
  - 797
  - 800
  - 801
  - 802
  - 805
  - 808
  - 809
  - 810
  - 811
  - 812
  - 813
  - 814
  - 815
  - 816
  - 819
  - 820
  - 821
  - 822
  - 823
  - 824
  - 825
  - 832
  - 835
  - 836
  - 849
  - 850
  - 851
  - 728
  - 857
  - 858
  - 859
  - 860
  - 863
  - 865
  - 868
  - 871
  - 874
  - 752
  - 755
  - 756
  - 757
  - 758
  - 759
  - 763
  babel.messages.extract.extract_nothing:
  - 542
  babel.messages.extract.extract_python:
  - 642
  - 646
  - 648
  - 649
  - 650
  - 651
  - 653
  - 656
  - 658
  - 660
  - 661
  - 663
  - 664
  - 666
  - 667
  - 668
  - 670
  - 671
  - 672
  - 675
  - 676
  - 681
  - 554
  - 682
  - 684
  - 686
  - 687
  - 688
  - 690
  - 693
  - 576
  - 577
  - 578
  - 580
  - 586
  - 587
  - 589
  - 590
  - 595
  - 596
  - 597
  - 601
  - 603
  - 604
  - 606
  - 610
  - 611
  - 613
  - 615
  - 617
  - 618
  - 619
  - 622
  - 624
  - 626
  - 628
  - 632
  - 634
  babel.messages.extract.extract_python.<lambda1>:
  - 578
  babel.messages.extract.parse_template_string:
  - 896
  - 934
  - 912
  - 913
  - 915
  - 917
  - 919
  - 920
  - 922
  - 924
  - 926
  - 927
  babel.messages.frontend:
  - 1320
  - 1
  - 42
  - 1321
  babel.messages.frontend.CommandLineInterface:
  - 891
  babel.messages.frontend.CommandLineInterface._configure_command:
  - 1024
  - 1025
  - 1027
  - 1028
  - 1029
  - 1030
  - 1032
  - 1033
  - 1035
  - 1036
  - 1038
  - 1039
  - 1042
  - 1044
  - 1001
  - 1006
  - 1007
  - 1009
  - 1010
  - 1012
  - 1016
  - 1017
  - 1018
  - 1019
  - 1021
  - 1022
  - 1023
  babel.messages.frontend.CommandLineInterface._configure_logging:
  - 980
  - 984
  - 987
  - 988
  - 989
  - 990
  - 991
  babel.messages.frontend.CommandLineInterface._help:
  - 994
  - 995
  - 996
  - 997
  - 998
  babel.messages.frontend.CommandLineInterface.run:
  - 916
  - 921
  - 924
  - 928
  - 930
  - 936
  - 944
  - 952
  - 954
  - 956
  - 957
  - 958
  - 959
  - 960
  - 961
  - 962
  - 965
  - 966
  - 972
  - 973
  - 975
  - 976
  babel.messages.frontend.CommandMixin.__init__:
  - 138
  babel.messages.frontend.CommandMixin.ensure_finalized:
  - 149
  - 150
  babel.messages.frontend.CompileCatalog._get_po_mo_triples:
  - 225
  - 206
  - 207
  - 208
  - 211
  - 213
  - 215
  - 216
  - 218
  - 219
  - 220
  - 223
  babel.messages.frontend.CompileCatalog._run_domain:
  - 258
  - 259
  - 260
  - 261
  - 263
  - 265
  - 266
  - 228
  - 229
  - 234
  - 235
  - 236
  - 238
  - 240
  - 241
  - 244
  - 245
  - 246
  - 249
  - 254
  - 255
  babel.messages.frontend.CompileCatalog.finalize_options:
  - 193
  - 190
  - 191
  babel.messages.frontend.CompileCatalog.run:
  - 198
  - 199
  - 200
  - 201
  - 202
  babel.messages.frontend.ConfigurationError:
  - 58
  babel.messages.frontend.ExtractMessages._build_callback.callback:
  - 482
  - 483
  - 485
  - 469
  - 476
  - 479
  babel.messages.frontend.ExtractMessages._get_mappings:
  - 556
  - 557
  - 558
  - 561
  - 564
  - 570
  - 571
  - 575
  - 576
  - 578
  - 580
  - 581
  - 582
  - 585
  - 586
  - 587
  - 588
  - 591
  - 592
  babel.messages.frontend.ExtractMessages.finalize_options:
  - 396
  - 397
  - 404
  - 406
  - 410
  - 415
  - 417
  - 421
  - 423
  - 424
  - 426
  - 431
  - 432
  - 433
  - 434
  - 435
  - 436
  - 441
  - 444
  - 445
  - 448
  - 450
  - 451
  - 452
  - 453
  - 454
  - 456
  - 458
  - 461
  - 462
  - 463
  babel.messages.frontend.ExtractMessages.run:
  - 517
  - 490
  - 491
  - 492
  - 527
  - 528
  - 531
  - 533
  - 502
  - 503
  - 504
  - 505
  - 506
  - 541
  - 542
  babel.messages.frontend.InitCatalog.finalize_options:
  - 646
  - 649
  - 652
  - 656
  - 658
  - 659
  - 660
  - 662
  - 664
  - 666
  - 667
  babel.messages.frontend.InitCatalog.run:
  - 675
  - 670
  babel.messages.frontend.UpdateCatalog._get_locale_po_file_tuples:
  - 781
  - 782
  - 783
  - 785
  - 787
  - 789
  - 790
  - 792
  babel.messages.frontend.UpdateCatalog.finalize_options:
  - 771
  - 773
  - 775
  - 776
  - 777
  - 751
  - 753
  - 755
  - 758
  - 759
  - 765
  babel.messages.frontend.UpdateCatalog.run:
  - 796
  - 797
  - 800
  - 802
  - 805
  - 806
  - 808
  - 809
  - 810
  - 813
  - 819
  - 826
  - 827
  - 828
  - 830
  - 837
  - 838
  - 839
  - 842
  - 843
  - 852
  - 855
  - 856
  - 857
  - 858
  - 859
  - 861
  - 862
  - 866
  - 873
  - 874
  - 875
  - 877
  - 878
  - 879
  - 880
  - 882
  - 883
  - 886
  babel.messages.frontend.__getattr__:
  - 1306
  - 1315
  babel.messages.frontend._init_catalog:
  - 608
  - 610
  - 611
  - 598
  - 601
  - 604
  - 607
  babel.messages.frontend._make_directory_filter:
  - 272
  babel.messages.frontend._make_directory_filter.cli_directory_filter:
  - 277
  - 278
  - 279
  babel.messages.frontend._parse_config_object:
  - 1152
  - 1156
  - 1158
  - 1159
  - 1163
  - 1166
  - 1167
  - 1168
  - 1169
  - 1170
  - 1176
  - 1177
  - 1179
  - 1186
  - 1187
  - 1191
  - 1117
  - 1118
  - 1122
  - 1123
  - 1128
  - 1134
  - 1139
  - 1140
  - 1144
  - 1145
  - 1149
  - 1151
  babel.messages.frontend._parse_mapping_toml:
  - 1219
  - 1223
  - 1230
  - 1232
  - 1202
  - 1239
  babel.messages.frontend._parse_spec:
  - 1248
  - 1249
  - 1251
  - 1252
  - 1245
  - 1246
  - 1247
  babel.messages.frontend._parse_string_options:
  - 1094
  - 1101
  - 1103
  - 1104
  - 1106
  - 1107
  babel.messages.frontend.listify_value:
  - 64
  - 97
  - 98
  - 100
  - 101
  - 91
  - 94
  - 95
  babel.messages.frontend.main:
  - 1050
  babel.messages.frontend.parse_keywords:
  - 1285
  - 1286
  - 1287
  - 1256
  - 1288
  - 1293
  - 1296
  - 1297
  babel.messages.frontend.parse_mapping:
  - 1059
  - 1054
  babel.messages.frontend.parse_mapping_cfg:
  - 1063
  - 1073
  - 1074
  - 1076
  - 1077
  - 1078
  - 1080
  - 1081
  - 1082
  - 1084
  - 1085
  - 1086
  babel.messages.jslexer:
  - 32
  - 1
  - 33
  - 34
  - 18
  - 27
  - 28
  - 29
  - 30
  - 31
  babel.messages.jslexer.get_rules:
  - 71
  - 77
  - 78
  - 80
  - 82
  - 83
  - 86
  babel.messages.jslexer.indicates_division:
  - 91
  - 94
  babel.messages.jslexer.tokenize:
  - 192
  - 174
  - 210
  - 211
  - 212
  - 213
  - 214
  - 215
  - 216
  - 185
  - 186
  - 190
  - 191
  babel.messages.jslexer.unquote_string:
  - 128
  - 129
  - 130
  - 131
  - 133
  - 139
  - 140
  - 143
  - 146
  - 147
  - 148
  - 149
  - 150
  - 151
  - 154
  - 158
  - 161
  - 162
  - 164
  - 100
  - 106
  - 113
  - 114
  - 116
  - 120
  - 121
  - 127
  babel.messages.mofile:
  - 1
  - 19
  babel.messages.mofile.read_mo:
  - 27
  - 36
  - 39
  - 41
  - 42
  - 47
  - 48
  - 49
  - 51
  - 52
  - 59
  - 60
  - 62
  - 64
  - 71
  - 74
  - 75
  - 76
  - 78
  - 79
  - 80
  - 81
  - 82
  - 85
  - 86
  - 90
  - 91
  - 92
  - 93
  - 94
  - 96
  - 97
  - 98
  - 104
  babel.messages.mofile.write_mo:
  - 156
  - 158
  - 163
  - 166
  - 167
  - 169
  - 170
  - 171
  - 173
  - 174
  - 176
  - 177
  - 178
  - 179
  - 180
  - 186
  - 187
  - 193
  - 198
  - 202
  - 204
  - 209
  - 109
  babel.messages.plurals:
  - 1
  - 18
  babel.messages.plurals._PluralTuple:
  - 208
  babel.messages.plurals._PluralTuple.num_plurals:
  - 214
  babel.messages.plurals._PluralTuple.plural_expr:
  - 219
  babel.messages.plurals._PluralTuple.plural_forms:
  - 224
  babel.messages.plurals.get_plural:
  - 232
  - 267
  - 259
  - 261
  babel.messages.pofile:
  - 1
  - 442
  - 29
  - 23
  babel.messages.pofile.PoFileError:
  - 140
  babel.messages.pofile.PoFileError.__init__:
  - 143
  babel.messages.pofile.PoFileParser:
  - 160
  babel.messages.pofile.PoFileParser.__init__:
  - 177
  babel.messages.pofile.PoFileParser._add_message:
  - 224
  - 193
  - 225
  - 226
  - 197
  - 198
  - 199
  - 200
  - 201
  - 202
  - 230
  - 208
  - 209
  - 211
  - 212
  - 213
  - 214
  babel.messages.pofile.PoFileParser._finish_current_message:
  - 233
  - 234
  - 235
  - 238
  - 240
  - 241
  babel.messages.pofile.PoFileParser._invalid_pofile:
  - 376
  - 378
  - 379
  - 375
  babel.messages.pofile.PoFileParser._process_comment:
  - 320
  - 323
  - 325
  - 326
  - 327
  - 331
  - 304
  - 307
  - 308
  - 309
  - 310
  - 312
  - 316
  - 319
  babel.messages.pofile.PoFileParser._process_keyword_line:
  - 261
  - 264
  - 267
  - 270
  - 272
  - 275
  - 284
  - 278
  - 279
  - 280
  - 281
  - 252
  - 254
  - 255
  babel.messages.pofile.PoFileParser._process_message_line:
  - 249
  - 244
  - 246
  - 247
  babel.messages.pofile.PoFileParser._process_string_continuation_line:
  - 289
  - 291
  - 294
  - 301
  - 287
  babel.messages.pofile.PoFileParser.parse:
  - 334
  - 344
  - 345
  - 346
  - 349
  - 350
  - 352
  - 353
  - 354
  - 355
  - 356
  - 359
  - 361
  - 363
  - 365
  - 369
  - 370
  - 371
  - 372
  babel.messages.pofile._NormalizedString.__init__:
  - 151
  babel.messages.pofile._NormalizedString.denormalize:
  - 154
  - 156
  babel.messages.pofile._enclose_filename_if_necessary:
  - 536
  - 530
  - 539
  - 541
  babel.messages.pofile._extract_locations:
  - 96
  - 97
  - 102
  - 103
  - 104
  - 122
  - 111
  - 112
  - 119
  - 120
  - 90
  - 123
  babel.messages.pofile._sort_messages:
  - 738
  - 747
  - 748
  - 749
  - 750
  - 751
  babel.messages.pofile.denormalize:
  - 80
  - 81
  - 82
  - 84
  - 86
  - 60
  babel.messages.pofile.escape:
  - 452
  - 462
  babel.messages.pofile.generate_po:
  - 642
  - 643
  - 668
  - 669
  - 670
  - 673
  - 675
  - 676
  - 677
  - 678
  - 680
  - 681
  - 682
  - 683
  - 685
  - 693
  - 695
  - 700
  - 701
  - 702
  - 703
  - 705
  - 706
  - 707
  - 708
  - 709
  - 711
  - 712
  - 713
  - 716
  - 717
  - 718
  - 720
  - 721
  - 723
  - 724
  - 725
  - 728
  - 729
  - 730
  - 731
  - 634
  babel.messages.pofile.generate_po.<lambda1>:
  - 695
  babel.messages.pofile.generate_po._format_comment:
  - 646
  - 647
  babel.messages.pofile.generate_po._format_message:
  - 650
  - 651
  - 652
  - 653
  - 654
  - 656
  - 661
  - 663
  - 664
  - 665
  - 666
  babel.messages.pofile.normalize:
  - 513
  - 515
  - 517
  - 519
  - 520
  - 523
  - 526
  - 469
  - 492
  - 493
  - 495
  - 496
  - 497
  - 498
  - 503
  - 504
  - 505
  - 508
  - 511
  babel.messages.pofile.read_po:
  - 438
  - 436
  - 437
  - 390
  babel.messages.pofile.unescape:
  - 56
  - 33
  - 54
  babel.messages.pofile.unescape.replace_escapes:
  - 49
  - 44
  - 45
  - 47
  babel.messages.pofile.write_po:
  - 608
  - 618
  - 619
  - 620
  - 558
  - 603
  - 605
  babel.messages.setuptools_frontend.check_message_extractors:
  - 20
  - 29
  babel.messages.setuptools_frontend.compile_catalog:
  - 36
  babel.messages.setuptools_frontend.extract_messages:
  - 54
  babel.messages.setuptools_frontend.init_catalog:
  - 70
  babel.messages.setuptools_frontend.update_catalog:
  - 86
  babel.numbers:
  - 1
  - 34
  - 33
  - 1271
  - 1081
  babel.numbers.NumberFormatError:
  - 1067
  babel.numbers.NumberFormatError.__init__:
  - 1070
  babel.numbers.NumberPattern.__init__:
  - 1395
  babel.numbers.NumberPattern.__repr__:
  - 1398
  babel.numbers.NumberPattern._format_frac:
  - 1675
  - 1676
  - 1677
  - 1679
  - 1681
  babel.numbers.NumberPattern._format_int:
  - 1627
  - 1628
  - 1622
  - 1623
  babel.numbers.NumberPattern._format_significant:
  - 1602
  - 1603
  - 1604
  - 1607
  - 1609
  - 1595
  - 1597
  - 1598
  babel.numbers.NumberPattern._quantize_value:
  - 1644
  - 1645
  - 1646
  - 1647
  - 1648
  - 1650
  - 1651
  - 1658
  babel.numbers.NumberPattern.apply:
  - 1538
  - 1539
  - 1540
  - 1541
  - 1542
  - 1543
  - 1547
  - 1555
  - 1563
  - 1564
  - 1565
  - 1566
  - 1570
  - 1458
  - 1487
  - 1488
  - 1490
  - 1493
  - 1494
  - 1497
  - 1498
  - 1506
  - 1508
  - 1514
  - 1515
  - 1525
  - 1526
  - 1529
  - 1530
  babel.numbers.NumberPattern.apply.<lambda1>:
  - 1570
  babel.numbers.NumberPattern.compute_scale:
  - 1408
  - 1401
  - 1410
  babel.numbers.NumberPattern.scientific_notation_elements:
  - 1442
  - 1421
  - 1423
  - 1424
  - 1425
  - 1430
  - 1432
  - 1436
  - 1437
  - 1438
  - 1439
  babel.numbers.UnknownCurrencyError:
  - 38
  babel.numbers.UnknownCurrencyError.__init__:
  - 41
  - 44
  babel.numbers.UnknownCurrencyFormatError:
  - 702
  babel.numbers.UnsupportedNumberingSystemError:
  - 348
  babel.numbers._format_currency_long_name:
  - 864
  - 867
  - 870
  - 873
  - 876
  - 878
  - 888
  babel.numbers._get_compact_format:
  - 672
  - 674
  - 675
  - 677
  - 681
  - 683
  - 686
  - 688
  - 689
  - 691
  - 693
  - 662
  - 695
  - 666
  - 667
  - 668
  - 671
  babel.numbers._get_number_symbols:
  - 338
  babel.numbers._get_numbering_system:
  - 327
  babel.numbers._remove_trailing_zeros_after_decimal:
  - 1260
  - 1262
  - 1263
  - 1264
  - 1237
  babel.numbers.format_compact_currency:
  - 928
  - 930
  - 900
  - 932
  - 935
  - 937
  - 939
  - 941
  - 942
  - 919
  - 926
  babel.numbers.format_compact_decimal:
  - 641
  - 643
  - 645
  - 647
  - 616
  - 648
  babel.numbers.format_currency:
  - 833
  - 809
  - 811
  - 812
  - 717
  - 823
  - 824
  babel.numbers.format_decimal:
  - 548
  - 595
  - 596
  - 598
  - 599
  babel.numbers.format_number:
  - 511
  - 516
  - 495
  babel.numbers.format_percent:
  - 961
  - 1003
  - 1004
  - 1006
  - 1007
  babel.numbers.format_scientific:
  - 1024
  - 1057
  - 1058
  - 1054
  - 1055
  babel.numbers.get_currency_name:
  - 128
  - 132
  - 134
  - 136
  - 138
  - 112
  - 125
  - 126
  babel.numbers.get_currency_precision:
  - 155
  - 164
  - 165
  babel.numbers.get_currency_symbol:
  - 142
  - 151
  babel.numbers.get_currency_unit_pattern:
  - 192
  - 193
  - 173
  - 191
  babel.numbers.get_decimal_precision:
  - 520
  - 525
  - 526
  - 528
  - 530
  babel.numbers.get_decimal_quantum:
  - 536
  - 534
  - 535
  babel.numbers.get_decimal_symbol:
  - 372
  - 373
  - 358
  babel.numbers.get_exponential_symbol:
  - 441
  - 442
  - 427
  babel.numbers.get_group_symbol:
  - 464
  - 465
  - 450
  babel.numbers.get_infinity_symbol:
  - 488
  - 473
  - 487
  babel.numbers.get_minus_sign_symbol:
  - 418
  - 419
  - 404
  babel.numbers.get_plus_sign_symbol:
  - 395
  - 396
  - 381
  babel.numbers.get_territory_currencies:
  - 282
  - 283
  - 284
  - 285
  - 286
  - 287
  - 289
  - 290
  - 292
  - 299
  - 300
  - 301
  - 302
  - 303
  - 304
  - 308
  - 309
  - 318
  - 211
  - 222
  - 233
  babel.numbers.is_currency:
  - 83
  - 86
  - 79
  babel.numbers.list_currencies:
  - 51
  - 61
  - 62
  - 63
  babel.numbers.normalize_currency:
  - 101
  - 100
  - 93
  - 102
  babel.numbers.parse_decimal:
  - 1215
  - 1187
  - 1221
  - 1190
  - 1193
  - 1196
  - 1197
  - 1138
  - 1203
  - 1205
  - 1206
  - 1179
  - 1180
  - 1181
  - 1183
  babel.numbers.parse_grouping:
  - 1288
  - 1289
  - 1290
  - 1293
  - 1294
  - 1279
  babel.numbers.parse_number:
  - 1120
  - 1090
  - 1123
  - 1126
  - 1112
  - 1114
  babel.numbers.parse_pattern:
  - 1301
  - 1302
  - 1314
  - 1315
  - 1316
  - 1317
  - 1319
  - 1322
  - 1323
  - 1326
  - 1328
  - 1329
  - 1349
  - 1350
  - 1351
  - 1352
  - 1353
  - 1354
  - 1358
  - 1359
  babel.numbers.parse_pattern._match_number:
  - 1306
  - 1307
  - 1309
  babel.numbers.parse_pattern.parse_precision:
  - 1335
  - 1337
  - 1338
  - 1341
  - 1343
  babel.numbers.validate_currency:
  - 74
  - 67
  babel.plural:
  - 352
  - 1
  - 354
  - 355
  - 353
  - 356
  - 541
  babel.plural.PluralRule:
  - 84
  babel.plural.PluralRule.__call__:
  - 176
  - 174
  - 175
  babel.plural.PluralRule.__init__:
  - 107
  - 114
  - 115
  - 116
  - 118
  - 119
  - 121
  - 123
  - 124
  - 125
  - 126
  babel.plural.PluralRule.__repr__:
  - 130
  - 131
  babel.plural.PluralRule.parse:
  - 144
  - 138
  - 146
  babel.plural.PluralRule.rules:
  - 156
  - 157
  - 150
  babel.plural.PluralRule.tags:
  - 161
  - 165
  babel.plural.RuleError:
  - 337
  babel.plural._Compiler:
  - 545
  - 553
  - 554
  - 555
  - 556
  - 557
  - 558
  - 559
  - 560
  - 561
  - 562
  - 563
  - 564
  - 565
  - 566
  - 567
  babel.plural._Compiler.<lambda9>:
  - 561
  babel.plural._Compiler.compile:
  - 551
  babel.plural._GettextCompiler:
  - 589
  babel.plural._GettextCompiler.compile_relation:
  - 599
  - 600
  - 601
  - 602
  - 604
  - 605
  - 606
  - 607
  babel.plural._JavaScriptCompiler:
  - 611
  - 615
  babel.plural._JavaScriptCompiler.compile_relation:
  - 624
  - 622
  - 623
  babel.plural._Parser:
  - 410
  babel.plural._Parser.__init__:
  - 450
  - 451
  - 444
  - 445
  babel.plural._Parser.and_condition:
  - 472
  - 473
  - 471
  babel.plural._Parser.condition:
  - 465
  - 466
  - 467
  babel.plural._Parser.expect:
  - 455
  - 456
  - 458
  - 459
  - 460
  babel.plural._Parser.expr:
  - 517
  - 518
  - 521
  - 522
  - 523
  - 524
  - 525
  babel.plural._Parser.newfangled_relation:
  - 496
  - 500
  - 501
  - 494
  babel.plural._Parser.range_list:
  - 512
  - 513
  - 514
  - 511
  babel.plural._Parser.range_or_value:
  - 504
  - 505
  - 506
  babel.plural._Parser.relation:
  - 480
  - 481
  - 483
  - 486
  - 487
  - 489
  - 490
  - 491
  - 477
  - 478
  - 479
  babel.plural._Parser.value:
  - 528
  babel.plural._PythonCompiler:
  - 576
  - 577
  - 578
  - 579
  - 574
  babel.plural._PythonCompiler.compile_relation:
  - 585
  - 582
  - 583
  babel.plural._UnicodeCompiler:
  - 640
  - 630
  - 636
  - 637
  - 638
  - 639
  babel.plural._UnicodeCompiler.compile_not:
  - 643
  babel.plural._UnicodeCompiler.compile_relation:
  - 647
  - 648
  - 649
  - 651
  - 652
  babel.plural._binary_compiler:
  - 532
  - 533
  babel.plural._binary_compiler.<lambda1>:
  - 533
  babel.plural._unary_compiler:
  - 537
  - 538
  babel.plural._unary_compiler.<lambda1>:
  - 538
  babel.plural.cldr_modulo:
  - 328
  - 314
  - 331
  - 325
  babel.plural.extract_operands:
  - 65
  - 67
  - 68
  - 71
  - 72
  - 73
  - 74
  - 75
  - 76
  - 49
  - 50
  - 51
  - 52
  - 25
  babel.plural.in_range_list:
  - 287
  - 271
  babel.plural.skip_token:
  - 387
  - 388
  babel.plural.to_gettext:
  - 257
  - 260
  - 261
  - 262
  - 263
  - 264
  - 245
  - 254
  babel.plural.to_javascript:
  - 194
  - 196
  - 197
  - 198
  - 199
  - 180
  babel.plural.to_python:
  - 229
  - 234
  - 205
  - 237
  - 238
  - 239
  - 240
  babel.plural.tokenize_rule:
  - 361
  - 364
  - 366
  - 367
  - 368
  - 369
  - 370
  - 371
  babel.plural.within_range_list:
  - 310
  - 294
  babel.support:
  - 1
  - 33
  babel.support.Format:
  - 41
  babel.support.Format.__init__:
  - 67
  - 60
  babel.support.Format.compact_currency:
  - 218
  - 212
  babel.support.Format.compact_decimal:
  - 188
  - 180
  babel.support.Format.currency:
  - 197
  - 198
  babel.support.Format.date:
  - 83
  - 76
  babel.support.Format.datetime:
  - 90
  - 98
  babel.support.Format.decimal:
  - 161
  - 167
  babel.support.Format.number:
  - 154
  - 148
  babel.support.Format.percent:
  - 234
  - 228
  babel.support.Format.scientific:
  - 242
  - 243
  babel.support.Format.time:
  - 105
  - 113
  babel.support.Format.timedelta:
  - 138
  - 131
  babel.support.LazyProxy:
  - 251
  - 295
  babel.support.LazyProxy.__bool__:
  - 336
  babel.support.LazyProxy.__call__:
  - 369
  babel.support.LazyProxy.__copy__:
  - 410
  babel.support.LazyProxy.__deepcopy__:
  - 420
  - 421
  - 422
  - 423
  - 424
  babel.support.LazyProxy.__delattr__:
  - 390
  babel.support.LazyProxy.__dir__:
  - 339
  babel.support.LazyProxy.__getattr__:
  - 393
  - 395
  babel.support.LazyProxy.__init__:
  - 311
  - 312
  - 313
  - 314
  - 315
  - 316
  babel.support.LazyProxy.__iter__:
  - 342
  babel.support.LazyProxy.__len__:
  - 345
  babel.support.LazyProxy.__setattr__:
  - 398
  babel.support.LazyProxy.__str__:
  - 348
  babel.support.LazyProxy.value:
  - 320
  - 322
  - 324
  - 327
  - 329
  babel.support.NullTranslations:
  - 429
  babel.support.NullTranslations.__init__:
  - 448
  - 436
  - 446
  - 447
  babel.support.NullTranslations.__init__.<lambda1>:
  - 446
  babel.support.NullTranslations.dgettext:
  - 456
  - 453
  babel.support.NullTranslations.dngettext:
  - 481
  - 484
  babel.support.NullTranslations.dnpgettext:
  - 658
  - 661
  babel.support.NullTranslations.dpgettext:
  - 636
  - 639
  babel.support.NullTranslations.ldgettext:
  - 464
  - 459
  - 469
  babel.support.NullTranslations.ldngettext:
  - 497
  - 492
  - 487
  babel.support.NullTranslations.ldnpgettext:
  - 680
  - 684
  babel.support.NullTranslations.ldpgettext:
  - 651
  - 655
  babel.support.NullTranslations.lnpgettext:
  - 580
  - 587
  - 588
  - 589
  - 591
  - 592
  - 593
  - 574
  babel.support.NullTranslations.lpgettext:
  - 546
  - 547
  - 548
  - 535
  - 541
  babel.support.NullTranslations.npgettext:
  - 551
  - 563
  - 566
  - 567
  - 568
  babel.support.NullTranslations.pgettext:
  - 516
  - 524
  - 525
  - 526
  - 527
  - 528
  - 530
  - 531
  babel.support.NullTranslations.udgettext:
  - 472
  - 475
  babel.support.NullTranslations.udngettext:
  - 500
  - 503
  babel.support.NullTranslations.udnpgettext:
  - 664
  - 667
  babel.support.NullTranslations.udpgettext:
  - 642
  - 645
  babel.support.NullTranslations.unpgettext:
  - 616
  - 628
  - 630
  - 631
  - 632
  babel.support.NullTranslations.upgettext:
  - 608
  - 609
  - 610
  - 611
  - 612
  - 599
  - 606
  - 607
  babel.support.Translations:
  - 691
  babel.support.Translations.__init__:
  - 705
  - 700
  babel.support.Translations.__repr__:
  - 736
  - 735
  babel.support.Translations.add:
  - 739
  - 751
  - 752
  - 753
  - 755
  - 756
  - 757
  - 759
  babel.support.Translations.load:
  - 718
  - 726
  - 728
  - 729
  - 730
  - 731
  - 732
  babel.support.Translations.merge:
  - 773
  - 774
  - 775
  - 776
  - 765
  babel.support._locales_to_names:
  - 784
  - 790
  - 792
  - 793
  - 794
  - 796
  babel.units.UnknownUnitError.__init__:
  - 12
  babel.units._find_compound_unit:
  - 195
  - 201
  - 202
  - 172
  - 205
  - 211
  - 212
  - 216
  babel.units._find_unit_pattern:
  - 65
  - 67
  - 69
  - 70
  - 49
  babel.units.format_compound_unit:
  - 283
  - 287
  - 288
  - 289
  - 290
  - 301
  - 303
  - 304
  - 313
  - 320
  - 322
  - 323
  - 324
  - 326
  - 331
  - 332
  - 338
  - 347
  - 356
  - 233
  - 362
  babel.units.format_unit:
  - 135
  - 137
  - 138
  - 140
  - 142
  - 146
  - 84
  - 152
  - 154
  - 155
  - 159
  babel.units.get_unit_name:
  - 41
  - 42
  - 43
  - 45
  - 20
  babel.util:
  - 1
  - 105
  - 50
  - 24
  - 26
  babel.util.FixedOffsetTimezone:
  - 269
  babel.util.FixedOffsetTimezone.__init__:
  - 284
  - 285
  - 278
  babel.util.TextWrapper:
  - 213
  - 207
  babel.util.TextWrapper._split:
  - 225
  - 226
  - 227
  - 229
  - 216
  - 220
  - 222
  babel.util.distinct:
  - 42
  - 43
  - 44
  - 45
  - 46
  - 30
  babel.util.parse_encoding:
  - 57
  - 67
  - 68
  - 70
  - 71
  - 72
  - 73
  - 75
  - 76
  - 80
  - 88
  - 89
  - 91
  - 92
  - 93
  - 94
  - 97
  - 98
  - 102
  babel.util.parse_future_flags:
  - 128
  - 130
  - 131
  - 132
  - 133
  - 134
  - 137
  - 109
  - 114
  - 115
  - 118
  - 124
  - 126
  babel.util.pathmatch:
  - 197
  - 198
  - 199
  - 200
  - 201
  - 202
  - 142
  - 188
  - 191
  babel.util.wraptext:
  - 256
  - 250
  - 239
Fuzzer filename: /src/fuzz_lexer.py
Inheritance:
  babel.core.Locale: []
  babel.core.UnknownLocaleError:
  - Exception
  babel.dates.DateTimeFormat: []
  babel.dates.DateTimePattern: []
  babel.dates.ParseError:
  - ValueError
  babel.localedata.Alias: []
  babel.localedata.LocaleDataDict: []
  babel.localtime._fallback._FallbackLocalTimezone: []
  babel.messages.catalog.Catalog: []
  babel.messages.catalog.Message: []
  babel.messages.catalog.TranslationError:
  - Exception
  babel.messages.extract._FileObj:
  - Protocol
  babel.messages.extract._JSOptions:
  - TypedDict
  babel.messages.extract._PyOptions:
  - TypedDict
  babel.messages.frontend.BaseError:
  - Exception
  babel.messages.frontend.CommandLineInterface: []
  babel.messages.frontend.CommandMixin: []
  babel.messages.frontend.CompileCatalog:
  - CommandMixin
  babel.messages.frontend.ConfigurationError:
  - BaseError
  babel.messages.frontend.ExtractMessages:
  - CommandMixin
  babel.messages.frontend.InitCatalog:
  - CommandMixin
  babel.messages.frontend.OptionError:
  - BaseError
  babel.messages.frontend.SetupError:
  - BaseError
  babel.messages.frontend.UpdateCatalog:
  - CommandMixin
  babel.messages.jslexer.Token:
  - NamedTuple
  babel.messages.plurals._PluralTuple:
  - tuple
  babel.messages.pofile.PoFileError:
  - Exception
  babel.messages.pofile.PoFileParser: []
  babel.messages.pofile._NormalizedString:
  - list
  babel.messages.setuptools_frontend.compile_catalog:
  - Command
  babel.messages.setuptools_frontend.extract_messages:
  - Command
  babel.messages.setuptools_frontend.init_catalog:
  - Command
  babel.messages.setuptools_frontend.update_catalog:
  - Command
  babel.numbers.NumberFormatError:
  - ValueError
  babel.numbers.NumberPattern: []
  babel.numbers.UnknownCurrencyError:
  - Exception
  babel.numbers.UnknownCurrencyFormatError:
  - KeyError
  babel.numbers.UnsupportedNumberingSystemError:
  - Exception
  babel.plural.PluralRule: []
  babel.plural.RuleError:
  - Exception
  babel.plural._Compiler: []
  babel.plural._GettextCompiler:
  - _Compiler
  babel.plural._JavaScriptCompiler:
  - _GettextCompiler
  babel.plural._Parser: []
  babel.plural._PythonCompiler:
  - _Compiler
  babel.plural._UnicodeCompiler:
  - _Compiler
  babel.support.Format: []
  babel.support.LazyProxy: []
  babel.support.NullTranslations: []
  babel.support.Translations:
  - NullTranslations
  babel.units.UnknownUnitError:
  - ValueError
  babel.util.FixedOffsetTimezone: []
  babel.util.TextWrapper: []
ep:
  func_name: TestOneInput
  module: '...fuzz_lexer'
