All classes:
- croniter.CroniterError
- croniter.CroniterBadTypeRangeError
- croniter.CroniterBadCronError
- croniter.CroniterUnsupportedSyntaxError
- croniter.CroniterBadDateError
- croniter.CroniterNotAlphaError
- croniter.croniter
- croniter.HashExpander
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_match'
    functionSourceFile: '.........fuzz_match'
    functionUses: 0
    functionsReached:
    - atheris.Fuzz
    - atheris.Setup
    - '.........fuzz_match.main'
    - atheris.instrument_all
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - fdp
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 24
    functionName: '.........fuzz_match.RandomDateTime'
    functionSourceFile: '.........fuzz_match'
    functionUses: 1
    functionsReached:
    - fdp.ConsumeProbability
    - datetime.timedelta
    - 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: datetime.datetime.now
    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: fdp.ConsumeProbability
    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: datetime.timedelta
    functionSourceFile: datetime
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 28
    functionName: '.........fuzz_match.TestOneInput'
    functionSourceFile: '.........fuzz_match'
    functionUses: 0
    functionsReached:
    - g.get
    - croniter.croniter._get_low_from_current_date_number
    - <builtin>.enumerate
    - re.sub
    - fdp.ConsumeString
    - expressions.insert
    - cron.get_current
    - traceback.format_exc
    - croniter.croniter.__init__
    - expr.split
    - e_list.pop
    - expanded.append
    - <builtin>.len
    - croniter.croniter.match_range
    - dow_expanded_set.discard
    - <builtin>.min
    - '.........fuzz_match.RandomDateTime'
    - <builtin>.max
    - <builtin>.bool
    - <builtin>.sorted
    - croniter.croniter._expand
    - cron.get_prev
    - datetime.datetime.now
    - dateutil.relativedelta.relativedelta
    - datetime.timedelta
    - hash_id.encode
    - <builtin>.range
    - special_dow_re.match
    - whole_field_range.index
    - dow_expanded_set.difference
    - special_dow_rem.groupdict
    - time.time
    - expressions.pop
    - m.group
    - <builtin>.reversed
    - step_search_re.search
    - expr_format.lower
    - EXPANDERS.items
    - efl.split
    - res.append
    - <builtin>.str
    - cron.set_current
    - nth_weekday_of_month.keys
    - <builtin>.int
    - only_int_re.search
    - datetime.datetime.fromtimestamp
    - atheris.FuzzedDataProvider
    - croniter.croniter.set_current
    - croniter.croniter._alphaconv
    - croniter.croniter.expand
    - dt.weekday
    - t.startswith
    - croniter.croniter.datetime_to_timestamp
    - <builtin>.set
    - <builtin>.list
    - <builtin>.isinstance
    - croniter.croniter.value_alias
    - star_or_int_re.search
    - fdp.ConsumeProbability
    - croniter.croniter.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: 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.ConsumeString
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f30f8b2b4c0>
    - <ast.Constant object at 0x7f30f8b2b4f0>
    argNames:
    - cls
    - cron_expression
    - testdate
    - day_or
    - second_at_beginning
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 1176
    functionName: croniter.croniter.match
    functionSourceFile: croniter
    functionUses: 1
    functionsReached:
    - g.get
    - croniter.croniter._get_low_from_current_date_number
    - <builtin>.enumerate
    - re.sub
    - expressions.insert
    - cron.get_current
    - traceback.format_exc
    - croniter.croniter.__init__
    - expr.split
    - e_list.pop
    - expanded.append
    - <builtin>.len
    - croniter.croniter.match_range
    - dow_expanded_set.discard
    - <builtin>.min
    - <builtin>.max
    - <builtin>.bool
    - <builtin>.sorted
    - croniter.croniter._expand
    - cron.get_prev
    - dateutil.relativedelta.relativedelta
    - hash_id.encode
    - <builtin>.range
    - special_dow_re.match
    - whole_field_range.index
    - dow_expanded_set.difference
    - special_dow_rem.groupdict
    - time.time
    - expressions.pop
    - m.group
    - <builtin>.reversed
    - step_search_re.search
    - expr_format.lower
    - EXPANDERS.items
    - efl.split
    - res.append
    - <builtin>.str
    - cron.set_current
    - nth_weekday_of_month.keys
    - <builtin>.int
    - only_int_re.search
    - datetime.datetime.fromtimestamp
    - croniter.croniter.set_current
    - croniter.croniter._alphaconv
    - croniter.croniter.expand
    - dt.weekday
    - t.startswith
    - croniter.croniter.datetime_to_timestamp
    - <builtin>.set
    - <builtin>.list
    - <builtin>.isinstance
    - croniter.croniter.value_alias
    - star_or_int_re.search
    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: 38
    functionName: '.........fuzz_match.main'
    functionSourceFile: '.........fuzz_match'
    functionUses: 1
    functionsReached:
    - atheris.Fuzz
    - atheris.Setup
    - 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: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: croniter
    functionSourceFile: croniter
    functionUses: 0
    functionsReached:
    - datetime.datetime.fromtimestamp
    - <builtin>.object
    - DOW_ALPHAS.keys
    - struct.calcsize
    - platform.architecture
    - <builtin>.isinstance
    - croniter.is_32bit
    - <builtin>.len
    - M_ALPHAS.keys
    - re.compile
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 22
    functionName: croniter.is_32bit
    functionSourceFile: croniter
    functionUses: 1
    functionsReached:
    - struct.calcsize
    - platform.architecture
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.calcsize
    functionSourceFile: struct
    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: platform.architecture
    functionSourceFile: platform
    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.datetime.fromtimestamp
    functionSourceFile: datetime
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/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: 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: DOW_ALPHAS.keys
    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: M_ALPHAS.keys
    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>.len
    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: <builtin>.isinstance
    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: <builtin>.object
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - d
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 141
    functionName: croniter.datetime_to_timestamp
    functionSourceFile: croniter
    functionUses: 0
    functionsReached:
    - datetime.datetime
    - d.utcoffset
    - d.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: d.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: d.utcoffset
    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: datetime.datetime
    functionSourceFile: datetime
    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:
    - year
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 148
    functionName: croniter._is_leap
    functionSourceFile: croniter
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - year
    - month
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 152
    functionName: croniter._last_day_of_month
    functionSourceFile: croniter
    functionUses: 3
    functionsReached:
    - croniter._is_leap
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - date
    - previous_date
    - is_prev
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 160
    functionName: croniter._is_successor
    functionSourceFile: croniter
    functionUses: 8
    functionsReached:
    - previous_date.astimezone
    - date.astimezone
    linkageType: pythonLinkage
    raised: []
    returnType: N/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.astimezone
    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: previous_date.astimezone
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - date1
    - date2
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 169
    functionName: croniter._timezone_delta
    functionSourceFile: croniter
    functionUses: 7
    functionsReached:
    - date2.utcoffset
    - date1.utcoffset
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: date1.utcoffset
    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: date2.utcoffset
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 3
    argDefaultValues: []
    argNames:
    - date
    - previous_date
    - is_prev
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 178
    functionName: croniter._add_tzinfo
    functionSourceFile: croniter
    functionUses: 7
    functionsReached:
    - farther.astimezone
    - croniter._is_successor
    - farther.utcoffset
    - previous_date.astimezone
    - date.astimezone
    - closer.astimezone
    - date.replace
    - datetime.timedelta
    - result.utcoffset
    - result.astimezone
    - <builtin>.getattr
    - dateutil.tz.datetime_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: <builtin>.getattr
    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: closer.astimezone
    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: farther.astimezone
    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: date.replace
    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: dateutil.tz.datetime_exists
    functionSourceFile: dateutil
    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: result.utcoffset
    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: farther.utcoffset
    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: result.astimezone
    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: copy.deepcopy
    functionSourceFile: copy
    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: 1
    functionLinenumber: -1
    functionName: croniter.croniter
    functionSourceFile: croniter
    functionUses: 0
    functionsReached:
    - copy.deepcopy
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 11
    argDefaultValues:
    - <ast.Constant object at 0x7f30f8d378b0>
    - <ast.Name object at 0x7f30f8d37f10>
    - <ast.Constant object at 0x7f30f8d37ac0>
    - <ast.Constant object at 0x7f30f8d37910>
    - <ast.Constant object at 0x7f30f8d37670>
    - <ast.Constant object at 0x7f30f8d37e20>
    - <ast.Constant object at 0x7f30f8d37eb0>
    - <ast.Constant object at 0x7f30f8d37d30>
    - <ast.Constant object at 0x7f30f8d370a0>
    argNames:
    - self
    - expr_format
    - start_time
    - ret_type
    - day_or
    - max_years_between_matches
    - is_prev
    - hash_id
    - implement_cron_bug
    - second_at_beginning
    - expand_from_start_time
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 288
    functionName: croniter.croniter.__init__
    functionSourceFile: croniter
    functionUses: 3
    functionsReached:
    - g.get
    - croniter.croniter._get_low_from_current_date_number
    - <builtin>.enumerate
    - re.sub
    - expressions.insert
    - traceback.format_exc
    - expr.split
    - e_list.pop
    - expanded.append
    - <builtin>.len
    - dow_expanded_set.discard
    - <builtin>.max
    - <builtin>.bool
    - <builtin>.sorted
    - croniter.croniter._expand
    - hash_id.encode
    - <builtin>.range
    - special_dow_re.match
    - whole_field_range.index
    - dow_expanded_set.difference
    - special_dow_rem.groupdict
    - time.time
    - expressions.pop
    - m.group
    - <builtin>.reversed
    - step_search_re.search
    - expr_format.lower
    - EXPANDERS.items
    - efl.split
    - res.append
    - <builtin>.str
    - nth_weekday_of_month.keys
    - <builtin>.int
    - only_int_re.search
    - datetime.datetime.fromtimestamp
    - croniter.croniter.set_current
    - croniter.croniter._alphaconv
    - croniter.croniter.expand
    - dt.weekday
    - t.startswith
    - croniter.croniter.datetime_to_timestamp
    - <builtin>.set
    - <builtin>.list
    - <builtin>.isinstance
    - croniter.croniter.value_alias
    - star_or_int_re.search
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/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: 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: hash_id.encode
    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>.int
    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: <builtin>.max
    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: time.time
    functionSourceFile: time
    functionUses: 4
    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 0x7f30f8e00400>
    argNames:
    - self
    - start_time
    - force
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 365
    functionName: croniter.croniter.set_current
    functionSourceFile: croniter
    functionUses: 9
    functionsReached:
    - <builtin>.isinstance
    - croniter.croniter.datetime_to_timestamp
    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 0x7f30f8b05910>
    - <ast.Constant object at 0x7f30f8b0b040>
    - <ast.Constant object at 0x7f30f8b0b070>
    argNames:
    - cls
    - expr_format
    - hash_id
    - second_at_beginning
    - from_timestamp
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1088
    functionName: croniter.croniter.expand
    functionSourceFile: croniter
    functionUses: 5
    functionsReached:
    - g.get
    - croniter.croniter._get_low_from_current_date_number
    - <builtin>.enumerate
    - re.sub
    - expressions.insert
    - traceback.format_exc
    - expr.split
    - e_list.pop
    - expanded.append
    - <builtin>.len
    - dow_expanded_set.discard
    - <builtin>.max
    - <builtin>.sorted
    - croniter.croniter._expand
    - <builtin>.range
    - special_dow_re.match
    - whole_field_range.index
    - dow_expanded_set.difference
    - special_dow_rem.groupdict
    - expressions.pop
    - m.group
    - <builtin>.reversed
    - step_search_re.search
    - expr_format.lower
    - EXPANDERS.items
    - efl.split
    - res.append
    - <builtin>.str
    - nth_weekday_of_month.keys
    - <builtin>.int
    - datetime.datetime.fromtimestamp
    - only_int_re.search
    - croniter.croniter._alphaconv
    - dt.weekday
    - t.startswith
    - <builtin>.set
    - <builtin>.list
    - <builtin>.isinstance
    - croniter.croniter.value_alias
    - star_or_int_re.search
    linkageType: pythonLinkage
    raised:
    - CroniterBadCronError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - cls
    - index
    - key
    - expressions
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 339
    functionName: croniter.croniter._alphaconv
    functionSourceFile: croniter
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - CroniterNotAlphaError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f30f91e0e20>
    - <ast.Constant object at 0x7f30f91e0760>
    - <ast.Constant object at 0x7f30f91e0e80>
    argNames:
    - self
    - ret_type
    - start_time
    - update_current
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 345
    functionName: croniter.croniter.get_next
    functionSourceFile: croniter
    functionUses: 0
    functionsReached:
    - farther.astimezone
    - croniter.croniter.timestamp_to_datetime
    - farther.utcoffset
    - now.replace
    - result.astimezone
    - date2.utcoffset
    - <builtin>.len
    - croniter._timezone_delta
    - EPOCH.replace
    - dateutil.tz.tzutc
    - previous_date.astimezone
    - date.astimezone
    - date.replace
    - datetime.timedelta
    - dateutil.relativedelta.relativedelta
    - <builtin>.issubclass
    - dateutil.tz.datetime_exists
    - re_star.match
    - closer.astimezone
    - result.utcoffset
    - croniter.croniter._calc_next
    - croniter.croniter._calc
    - <builtin>.getattr
    - datetime.datetime.fromtimestamp
    - date1.utcoffset
    - croniter._add_tzinfo
    - croniter.croniter._get_next
    - croniter.croniter.set_current
    - croniter._is_successor
    - croniter.croniter.datetime_to_timestamp
    - <builtin>.isinstance
    - unaware_time.replace
    - result.replace
    - <builtin>.abs
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f30f9428a00>
    - <ast.Constant object at 0x7f30f9428430>
    - <ast.Constant object at 0x7f30f9428610>
    - <ast.Constant object at 0x7f30f94285b0>
    argNames:
    - self
    - ret_type
    - start_time
    - is_prev
    - update_current
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 405
    functionName: croniter.croniter._get_next
    functionSourceFile: croniter
    functionUses: 4
    functionsReached:
    - farther.astimezone
    - croniter.croniter.timestamp_to_datetime
    - farther.utcoffset
    - now.replace
    - result.astimezone
    - date2.utcoffset
    - <builtin>.len
    - croniter._timezone_delta
    - EPOCH.replace
    - dateutil.tz.tzutc
    - previous_date.astimezone
    - date.astimezone
    - date.replace
    - datetime.timedelta
    - dateutil.relativedelta.relativedelta
    - <builtin>.issubclass
    - dateutil.tz.datetime_exists
    - re_star.match
    - closer.astimezone
    - result.utcoffset
    - croniter.croniter._calc_next
    - croniter.croniter._calc
    - <builtin>.getattr
    - datetime.datetime.fromtimestamp
    - date1.utcoffset
    - croniter._add_tzinfo
    - croniter.croniter.set_current
    - croniter._is_successor
    - croniter.croniter.datetime_to_timestamp
    - <builtin>.isinstance
    - unaware_time.replace
    - result.replace
    - <builtin>.abs
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f30f8e1f8e0>
    - <ast.Constant object at 0x7f30f8e1f3d0>
    - <ast.Constant object at 0x7f30f8e1f820>
    argNames:
    - self
    - ret_type
    - start_time
    - update_current
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 354
    functionName: croniter.croniter.get_prev
    functionSourceFile: croniter
    functionUses: 0
    functionsReached:
    - farther.astimezone
    - croniter.croniter.timestamp_to_datetime
    - farther.utcoffset
    - now.replace
    - result.astimezone
    - date2.utcoffset
    - <builtin>.len
    - croniter._timezone_delta
    - EPOCH.replace
    - dateutil.tz.tzutc
    - previous_date.astimezone
    - date.astimezone
    - date.replace
    - datetime.timedelta
    - dateutil.relativedelta.relativedelta
    - <builtin>.issubclass
    - dateutil.tz.datetime_exists
    - re_star.match
    - closer.astimezone
    - result.utcoffset
    - croniter.croniter._calc_next
    - croniter.croniter._calc
    - <builtin>.getattr
    - datetime.datetime.fromtimestamp
    - date1.utcoffset
    - croniter._add_tzinfo
    - croniter.croniter._get_next
    - croniter.croniter.set_current
    - croniter._is_successor
    - croniter.croniter.datetime_to_timestamp
    - <builtin>.isinstance
    - unaware_time.replace
    - result.replace
    - <builtin>.abs
    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 0x7f30f8e1faf0>
    argNames:
    - self
    - ret_type
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 359
    functionName: croniter.croniter.get_current
    functionSourceFile: croniter
    functionUses: 0
    functionsReached:
    - datetime.datetime.fromtimestamp
    - EPOCH.replace
    - dateutil.tz.tzutc
    - croniter.croniter.timestamp_to_datetime
    - datetime.timedelta
    - result.replace
    - <builtin>.issubclass
    linkageType: pythonLinkage
    raised: []
    returnType: N/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>.issubclass
    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.Name object at 0x7f30f8cf2190>
    argNames:
    - self
    - timestamp
    - tzinfo
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 387
    functionName: croniter.croniter.timestamp_to_datetime
    functionSourceFile: croniter
    functionUses: 7
    functionsReached:
    - datetime.datetime.fromtimestamp
    - EPOCH.replace
    - dateutil.tz.tzutc
    - datetime.timedelta
    - result.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - d
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 379
    functionName: croniter.croniter.datetime_to_timestamp
    functionSourceFile: croniter
    functionUses: 10
    functionsReached:
    - croniter.croniter.datetime_to_timestamp
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: EPOCH.replace
    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: dateutil.tz.tzutc
    functionSourceFile: dateutil
    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: result.replace
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - is_prev
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 475
    functionName: croniter.croniter._calc_next
    functionSourceFile: croniter
    functionUses: 5
    functionsReached:
    - farther.astimezone
    - croniter.croniter.timestamp_to_datetime
    - farther.utcoffset
    - now.replace
    - result.astimezone
    - date2.utcoffset
    - <builtin>.len
    - croniter._timezone_delta
    - EPOCH.replace
    - dateutil.tz.tzutc
    - previous_date.astimezone
    - date.astimezone
    - date.replace
    - datetime.timedelta
    - dateutil.relativedelta.relativedelta
    - dateutil.tz.datetime_exists
    - re_star.match
    - closer.astimezone
    - result.utcoffset
    - croniter.croniter._calc
    - <builtin>.getattr
    - datetime.datetime.fromtimestamp
    - date1.utcoffset
    - croniter._add_tzinfo
    - croniter._is_successor
    - unaware_time.replace
    - result.replace
    - <builtin>.abs
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f30f8d57b50>
    - <ast.Constant object at 0x7f30f8d57c10>
    - <ast.Constant object at 0x7f30f8d57c70>
    argNames:
    - self
    - ret_type
    - start_time
    - update_current
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 430
    functionName: croniter.croniter.all_next
    functionSourceFile: croniter
    functionUses: 0
    functionsReached:
    - farther.astimezone
    - croniter.croniter.timestamp_to_datetime
    - farther.utcoffset
    - now.replace
    - result.astimezone
    - date2.utcoffset
    - <builtin>.len
    - croniter._timezone_delta
    - EPOCH.replace
    - dateutil.tz.tzutc
    - previous_date.astimezone
    - date.astimezone
    - date.replace
    - datetime.timedelta
    - dateutil.relativedelta.relativedelta
    - <builtin>.issubclass
    - dateutil.tz.datetime_exists
    - re_star.match
    - closer.astimezone
    - result.utcoffset
    - croniter.croniter._calc_next
    - croniter.croniter._calc
    - <builtin>.getattr
    - datetime.datetime.fromtimestamp
    - date1.utcoffset
    - croniter._add_tzinfo
    - croniter.croniter._get_next
    - croniter.croniter.set_current
    - croniter._is_successor
    - croniter.croniter.datetime_to_timestamp
    - <builtin>.isinstance
    - unaware_time.replace
    - result.replace
    - <builtin>.abs
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f30f9447400>
    - <ast.Constant object at 0x7f30f9447f70>
    - <ast.Constant object at 0x7f30f9447c40>
    argNames:
    - self
    - ret_type
    - start_time
    - update_current
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 451
    functionName: croniter.croniter.all_prev
    functionSourceFile: croniter
    functionUses: 0
    functionsReached:
    - farther.astimezone
    - croniter.croniter.timestamp_to_datetime
    - farther.utcoffset
    - now.replace
    - result.astimezone
    - date2.utcoffset
    - <builtin>.len
    - croniter._timezone_delta
    - EPOCH.replace
    - dateutil.tz.tzutc
    - previous_date.astimezone
    - date.astimezone
    - date.replace
    - datetime.timedelta
    - dateutil.relativedelta.relativedelta
    - <builtin>.issubclass
    - dateutil.tz.datetime_exists
    - re_star.match
    - closer.astimezone
    - result.utcoffset
    - croniter.croniter._calc_next
    - croniter.croniter._calc
    - <builtin>.getattr
    - datetime.datetime.fromtimestamp
    - date1.utcoffset
    - croniter._add_tzinfo
    - croniter.croniter._get_next
    - croniter.croniter.set_current
    - croniter._is_successor
    - croniter.croniter.datetime_to_timestamp
    - <builtin>.isinstance
    - unaware_time.replace
    - result.replace
    - <builtin>.abs
    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: 0
    functionLinenumber: 467
    functionName: croniter.croniter.iter
    functionSourceFile: croniter
    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: 470
    functionName: croniter.croniter.__iter__
    functionSourceFile: croniter
    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_star.match
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 19
    ICount: 0
    IfCount: 13
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - now
    - expanded
    - nth_weekday_of_month
    - is_prev
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 507
    functionName: croniter.croniter._calc
    functionSourceFile: croniter
    functionUses: 6
    functionsReached:
    - farther.astimezone
    - farther.utcoffset
    - now.replace
    - result.astimezone
    - date2.utcoffset
    - <builtin>.len
    - croniter._timezone_delta
    - previous_date.astimezone
    - date.astimezone
    - date.replace
    - dateutil.relativedelta.relativedelta
    - datetime.timedelta
    - dateutil.tz.datetime_exists
    - closer.astimezone
    - result.utcoffset
    - croniter.croniter._calc
    - <builtin>.getattr
    - date1.utcoffset
    - croniter._add_tzinfo
    - croniter._is_successor
    - unaware_time.replace
    - <builtin>.abs
    linkageType: pythonLinkage
    raised:
    - CroniterBadDateError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dateutil.relativedelta.relativedelta
    functionSourceFile: dateutil
    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: now.replace
    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: unaware_time.replace
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - d
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 533
    functionName: croniter.croniter._calc.proc_year
    functionSourceFile: croniter
    functionUses: 0
    functionsReached:
    - croniter.croniter._get_prev_nearest_diff
    - <builtin>.enumerate
    - croniter.croniter._get_next_nearest_diff
    - candidates.reverse
    - dateutil.relativedelta.relativedelta
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 2
    IfCount: 5
    argCount: 3
    argDefaultValues: []
    argNames:
    - x
    - to_check
    - range_val
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 789
    functionName: croniter.croniter._get_prev_nearest_diff
    functionSourceFile: croniter
    functionUses: 7
    functionsReached:
    - candidates.reverse
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 3
    argDefaultValues: []
    argNames:
    - x
    - to_check
    - range_val
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 765
    functionName: croniter.croniter._get_next_nearest_diff
    functionSourceFile: croniter
    functionUses: 7
    functionsReached:
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - d
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 554
    functionName: croniter.croniter._calc.proc_month
    functionSourceFile: croniter
    functionUses: 0
    functionsReached:
    - croniter.croniter._get_prev_nearest_diff
    - <builtin>.enumerate
    - croniter._is_leap
    - croniter.croniter._get_next_nearest_diff
    - candidates.reverse
    - dateutil.relativedelta.relativedelta
    - croniter._last_day_of_month
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - d
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 575
    functionName: croniter.croniter._calc.proc_day_of_month
    functionSourceFile: croniter
    functionUses: 0
    functionsReached:
    - croniter.croniter._get_prev_nearest_diff
    - <builtin>.enumerate
    - croniter._is_leap
    - croniter.croniter._get_next_nearest_diff
    - candidates.reverse
    - dateutil.relativedelta.relativedelta
    - croniter._last_day_of_month
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - d
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 597
    functionName: croniter.croniter._calc.proc_day_of_week
    functionSourceFile: croniter
    functionUses: 0
    functionsReached:
    - croniter.croniter._get_prev_nearest_diff
    - d.isoweekday
    - <builtin>.enumerate
    - croniter.croniter._get_next_nearest_diff
    - candidates.reverse
    - dateutil.relativedelta.relativedelta
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: d.isoweekday
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 3
    IfCount: 9
    argCount: 1
    argDefaultValues: []
    argNames:
    - d
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 610
    functionName: croniter.croniter._calc.proc_day_of_week_nth
    functionSourceFile: croniter
    functionUses: 0
    functionsReached:
    - croniter._is_leap
    - <builtin>.len
    - nth_weekday_of_month.items
    - c.pop
    - calendar.Calendar
    - dateutil.relativedelta.relativedelta
    - <builtin>.range
    - croniter.croniter._get_nth_weekday_of_month
    - croniter._last_day_of_month
    - candidates.append
    - <builtin>.tuple
    - candidates.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: <builtin>.range
    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: nth_weekday_of_month.items
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - year
    - month
    - day_of_week
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 825
    functionName: croniter.croniter._get_nth_weekday_of_month
    functionSourceFile: croniter
    functionUses: 1
    functionsReached:
    - calendar.Calendar
    - <builtin>.tuple
    - c.pop
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: candidates.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: candidates.sort
    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:
    - d
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 651
    functionName: croniter.croniter._calc.proc_hour
    functionSourceFile: croniter
    functionUses: 0
    functionsReached:
    - croniter.croniter._get_prev_nearest_diff
    - <builtin>.enumerate
    - croniter.croniter._get_next_nearest_diff
    - candidates.reverse
    - dateutil.relativedelta.relativedelta
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - d
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 664
    functionName: croniter.croniter._calc.proc_minute
    functionSourceFile: croniter
    functionUses: 0
    functionsReached:
    - croniter.croniter._get_prev_nearest_diff
    - <builtin>.enumerate
    - croniter.croniter._get_next_nearest_diff
    - candidates.reverse
    - dateutil.relativedelta.relativedelta
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - d
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 677
    functionName: croniter.croniter._calc.proc_second
    functionSourceFile: croniter
    functionUses: 0
    functionsReached:
    - croniter.croniter._get_prev_nearest_diff
    - <builtin>.enumerate
    - croniter.croniter._get_next_nearest_diff
    - candidates.reverse
    - dateutil.relativedelta.relativedelta
    - <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: <builtin>.abs
    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: <builtin>.enumerate
    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: candidates.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: calendar.Calendar
    functionSourceFile: calendar
    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: c.pop
    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>.tuple
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 4
    argDefaultValues:
    - <ast.Name object at 0x7f30f8b486d0>
    argNames:
    - cls
    - val
    - field_index
    - len_expressions
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 836
    functionName: croniter.croniter.value_alias
    functionSourceFile: croniter
    functionUses: 7
    functionsReached:
    - <builtin>.len
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 32
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 16
    EdgeCount: 46
    ICount: 5
    IfCount: 32
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f30f8b368e0>
    - <ast.Constant object at 0x7f30f8b368b0>
    - <ast.Constant object at 0x7f30f8b36880>
    argNames:
    - cls
    - expr_format
    - hash_id
    - second_at_beginning
    - from_timestamp
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 854
    functionName: croniter.croniter._expand
    functionSourceFile: croniter
    functionUses: 6
    functionsReached:
    - g.get
    - croniter.croniter._get_low_from_current_date_number
    - re.sub
    - <builtin>.enumerate
    - expressions.insert
    - expr.split
    - e_list.pop
    - expanded.append
    - <builtin>.len
    - dow_expanded_set.discard
    - <builtin>.max
    - <builtin>.sorted
    - <builtin>.range
    - special_dow_re.match
    - whole_field_range.index
    - dow_expanded_set.difference
    - special_dow_rem.groupdict
    - expressions.pop
    - m.group
    - <builtin>.reversed
    - step_search_re.search
    - expr_format.lower
    - EXPANDERS.items
    - efl.split
    - res.append
    - <builtin>.str
    - nth_weekday_of_month.keys
    - <builtin>.int
    - datetime.datetime.fromtimestamp
    - only_int_re.search
    - croniter.croniter._alphaconv
    - dt.weekday
    - t.startswith
    - <builtin>.set
    - <builtin>.list
    - <builtin>.isinstance
    - croniter.croniter.value_alias
    - star_or_int_re.search
    linkageType: pythonLinkage
    raised:
    - CroniterUnsupportedSyntaxError
    - CroniterBadCronError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: expr_format.lower
    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: efl.split
    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: expressions.pop
    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: expressions.insert
    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: EXPANDERS.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: expr.split
    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: e_list.pop
    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>.str
    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: special_dow_re.match
    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: special_dow_rem.groupdict
    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: g.get
    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: re.sub
    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: step_search_re.search
    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: m.group
    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: only_int_re.search
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 4
    argDefaultValues: []
    argNames:
    - cls
    - field_index
    - step
    - from_timestamp
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1147
    functionName: croniter.croniter._get_low_from_current_date_number
    functionSourceFile: croniter
    functionUses: 7
    functionsReached:
    - datetime.datetime.fromtimestamp
    - dt.weekday
    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: <builtin>.list
    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>.reversed
    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: whole_field_range.index
    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: t.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: star_or_int_re.search
    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: res.append
    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: 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: 1
    functionLinenumber: -1
    functionName: croniter.croniter._expand.<lambda1>
    functionSourceFile: croniter
    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: <builtin>.sorted
    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: expanded.append
    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: nth_weekday_of_month.keys
    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: dow_expanded_set.difference
    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: dow_expanded_set.discard
    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: traceback.format_exc
    functionSourceFile: traceback
    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: dt.weekday
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f30f8b249d0>
    - <ast.Constant object at 0x7f30f8b24a00>
    - <ast.Constant object at 0x7f30f8b24a30>
    argNames:
    - cls
    - expression
    - hash_id
    - encoding
    - second_at_beginning
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1163
    functionName: croniter.croniter.is_valid
    functionSourceFile: croniter
    functionUses: 0
    functionsReached:
    - g.get
    - croniter.croniter._get_low_from_current_date_number
    - <builtin>.enumerate
    - re.sub
    - expressions.insert
    - traceback.format_exc
    - expr.split
    - e_list.pop
    - expanded.append
    - <builtin>.len
    - dow_expanded_set.discard
    - <builtin>.max
    - <builtin>.sorted
    - croniter.croniter._expand
    - hash_id.encode
    - <builtin>.range
    - special_dow_re.match
    - whole_field_range.index
    - dow_expanded_set.difference
    - special_dow_rem.groupdict
    - expressions.pop
    - m.group
    - <builtin>.reversed
    - step_search_re.search
    - expr_format.lower
    - EXPANDERS.items
    - efl.split
    - res.append
    - <builtin>.str
    - nth_weekday_of_month.keys
    - <builtin>.int
    - datetime.datetime.fromtimestamp
    - only_int_re.search
    - croniter.croniter._alphaconv
    - croniter.croniter.expand
    - dt.weekday
    - t.startswith
    - <builtin>.set
    - <builtin>.list
    - <builtin>.isinstance
    - croniter.croniter.value_alias
    - star_or_int_re.search
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f30f8b2b910>
    - <ast.Constant object at 0x7f30f8b2b940>
    argNames:
    - cls
    - cron_expression
    - from_datetime
    - to_datetime
    - day_or
    - second_at_beginning
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1180
    functionName: croniter.croniter.match_range
    functionSourceFile: croniter
    functionUses: 2
    functionsReached:
    - g.get
    - croniter.croniter._get_low_from_current_date_number
    - <builtin>.enumerate
    - re.sub
    - expressions.insert
    - cron.get_current
    - traceback.format_exc
    - croniter.croniter.__init__
    - expr.split
    - e_list.pop
    - expanded.append
    - <builtin>.len
    - dow_expanded_set.discard
    - <builtin>.min
    - <builtin>.max
    - <builtin>.bool
    - <builtin>.sorted
    - croniter.croniter._expand
    - cron.get_prev
    - dateutil.relativedelta.relativedelta
    - hash_id.encode
    - <builtin>.range
    - special_dow_re.match
    - whole_field_range.index
    - dow_expanded_set.difference
    - special_dow_rem.groupdict
    - time.time
    - expressions.pop
    - m.group
    - <builtin>.reversed
    - step_search_re.search
    - expr_format.lower
    - EXPANDERS.items
    - efl.split
    - res.append
    - <builtin>.str
    - cron.set_current
    - nth_weekday_of_month.keys
    - <builtin>.int
    - only_int_re.search
    - datetime.datetime.fromtimestamp
    - croniter.croniter.set_current
    - croniter.croniter._alphaconv
    - croniter.croniter.expand
    - dt.weekday
    - t.startswith
    - croniter.croniter.datetime_to_timestamp
    - <builtin>.set
    - <builtin>.list
    - <builtin>.isinstance
    - croniter.croniter.value_alias
    - star_or_int_re.search
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cron.get_current
    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: cron.set_current
    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: cron.get_prev
    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>.min
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 3
    IfCount: 7
    argCount: 9
    argDefaultValues:
    - <ast.Constant object at 0x7f30f8aa8be0>
    - <ast.Constant object at 0x7f30f8aa8c10>
    - <ast.Constant object at 0x7f30f8aa8c40>
    - <ast.Constant object at 0x7f30f8aa8c70>
    - <ast.Constant object at 0x7f30f8aa8ca0>
    - <ast.Constant object at 0x7f30f8aa8cd0>
    argNames:
    - start
    - stop
    - expr_format
    - ret_type
    - day_or
    - exclude_ends
    - _croniter
    - second_at_beginning
    - expand_from_start_time
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1203
    functionName: croniter.croniter_range
    functionSourceFile: croniter
    functionUses: 0
    functionsReached:
    - datetime.datetime.fromtimestamp
    - dateutil.tz.tzutc
    - math.floor
    - croniter.croniter_range.cont
    - <builtin>.isinstance
    - dateutil.relativedelta.relativedelta
    - <builtin>.abs
    - <builtin>.type
    - ic.get_current
    linkageType: pythonLinkage
    raised:
    - CroniterBadTypeRangeError
    returnType: N/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: 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: math.floor
    functionSourceFile: math
    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:
    - v
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1265
    functionName: croniter.croniter_range.cont
    functionSourceFile: croniter
    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: ic.get_current
    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
    - cronit
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1283
    functionName: croniter.HashExpander.__init__
    functionSourceFile: croniter
    functionUses: 0
    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 0x7f30f8a96820>
    - <ast.Constant object at 0x7f30f8a96850>
    - <ast.Constant object at 0x7f30f8a96880>
    - <ast.Constant object at 0x7f30f8a968b0>
    argNames:
    - self
    - idx
    - hash_type
    - hash_id
    - range_end
    - range_begin
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1286
    functionName: croniter.HashExpander.do
    functionSourceFile: croniter
    functionUses: 1
    functionsReached:
    - random.randint
    - binascii.crc32
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: random.randint
    functionSourceFile: random
    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: binascii.crc32
    functionSourceFile: binascii
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7f30f8a77af0>
    argNames:
    - self
    - efl
    - idx
    - expr
    - hash_id
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1298
    functionName: croniter.HashExpander.match
    functionSourceFile: croniter
    functionUses: 1
    functionsReached:
    - hash_expression_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: hash_expression_re.match
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 1
    IfCount: 10
    argCount: 7
    argDefaultValues:
    - <ast.Constant object at 0x7f30f8a77760>
    - <ast.Constant object at 0x7f30f8a777c0>
    argNames:
    - self
    - efl
    - idx
    - expr
    - hash_id
    - match
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1301
    functionName: croniter.HashExpander.expand
    functionSourceFile: croniter
    functionUses: 0
    functionsReached:
    - <builtin>.int
    - match.groupdict
    - random.randint
    - hash_expression_re.match
    - croniter.HashExpander.do
    - binascii.crc32
    - <builtin>.str
    - croniter.HashExpander.match
    linkageType: pythonLinkage
    raised:
    - CroniterBadCronError
    returnType: N/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.groupdict
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  Function list name: All functions
Function coverage:
  '.........fuzz_match':
  - 43
  - 44
  '.........fuzz_match.RandomDateTime':
  - 25
  '.........fuzz_match.TestOneInput':
  - 33
  - 29
  - 30
  - 31
  '.........fuzz_match.main':
  - 40
  - 41
  - 39
  croniter:
  - 128
  - 129
  - 130
  - 132
  - 133
  - 134
  - 136
  - 138
  - 54
  - 55
  - 62
  - 108
  - 109
  - 112
  - 113
  - 114
  - 115
  - 119
  - 120
  croniter.CroniterBadCronError:
  - 244
  croniter.CroniterBadDateError:
  - 256
  croniter.CroniterBadTypeRangeError:
  - 240
  croniter.CroniterError:
  - 236
  croniter.CroniterNotAlphaError:
  - 260
  croniter.CroniterUnsupportedSyntaxError:
  - 248
  croniter.HashExpander.do:
  - 1287
  - 1288
  - 1290
  - 1292
  - 1293
  - 1295
  croniter.HashExpander.expand:
  - 1302
  - 1303
  - 1304
  - 1305
  - 1307
  - 1309
  - 1312
  - 1313
  - 1316
  - 1318
  - 1321
  - 1325
  - 1326
  - 1328
  - 1329
  - 1331
  - 1332
  - 1336
  - 1337
  - 1340
  - 1342
  - 1345
  - 1350
  - 1352
  - 1355
  croniter.HashExpander.match:
  - 1299
  croniter._add_tzinfo:
  - 181
  - 189
  - 190
  - 195
  - 198
  - 200
  - 206
  - 207
  - 209
  - 210
  - 213
  - 217
  - 218
  - 219
  - 220
  - 224
  - 226
  - 228
  - 229
  - 230
  croniter._is_successor:
  - 163
  - 164
  - 165
  - 166
  croniter._last_day_of_month:
  - 153
  - 155
  croniter._timezone_delta:
  - 170
  - 171
  - 172
  croniter.croniter:
  - 275
  - 277
  croniter.croniter.__init__:
  - 326
  - 328
  - 334
  - 304
  - 307
  - 308
  - 310
  - 311
  - 314
  - 316
  - 318
  - 319
  croniter.croniter._calc:
  - 514
  - 516
  - 519
  - 520
  - 522
  - 524
  - 525
  - 526
  - 528
  - 700
  - 703
  - 704
  - 707
  - 710
  - 714
  - 716
  - 719
  - 720
  - 724
  - 726
  - 727
  - 733
  - 736
  - 738
  - 739
  - 745
  - 746
  - 749
  - 751
  - 755
  - 760
  croniter.croniter._calc.proc_day_of_month:
  - 577
  - 579
  - 580
  - 583
  - 585
  - 587
  - 589
  - 590
  - 591
  - 593
  croniter.croniter._calc.proc_day_of_week:
  - 599
  - 601
  - 602
  - 603
  - 604
  - 606
  croniter.croniter._calc.proc_day_of_week_nth:
  - 641
  - 643
  - 644
  - 645
  - 647
  - 611
  - 613
  - 614
  - 615
  - 621
  - 622
  - 623
  - 624
  - 626
  - 630
  - 631
  - 633
  - 634
  - 635
  - 637
  - 638
  croniter.croniter._calc.proc_hour:
  - 653
  - 655
  - 656
  - 657
  - 658
  - 660
  croniter.croniter._calc.proc_minute:
  - 673
  - 666
  - 668
  - 669
  - 670
  - 671
  croniter.croniter._calc.proc_month:
  - 556
  - 558
  - 563
  - 564
  - 565
  - 566
  - 567
  - 569
  croniter.croniter._calc.proc_second:
  - 678
  - 680
  - 682
  - 683
  - 684
  - 687
  croniter.croniter._calc.proc_year:
  - 544
  - 548
  - 534
  - 536
  - 539
  - 540
  - 542
  - 543
  croniter.croniter._calc_next:
  - 481
  - 485
  - 486
  - 487
  - 496
  - 500
  - 501
  - 505
  - 476
  - 478
  croniter.croniter._expand:
  - 1026
  - 1030
  - 1034
  - 1035
  - 1038
  - 1042
  - 1044
  - 1045
  - 1051
  - 1053
  - 1054
  - 1055
  - 1056
  - 1058
  - 1059
  - 1060
  - 1062
  - 1069
  - 1072
  - 1073
  - 1074
  - 1075
  - 1077
  - 868
  - 875
  - 877
  - 882
  - 884
  - 889
  - 890
  - 891
  - 895
  - 896
  - 901
  - 909
  - 912
  - 913
  - 916
  - 918
  - 919
  - 920
  - 921
  - 922
  - 925
  - 932
  - 938
  - 941
  - 943
  - 945
  - 949
  - 950
  - 952
  - 954
  - 955
  - 958
  - 959
  - 961
  - 962
  - 966
  - 971
  - 973
  - 974
  - 981
  - 985
  - 990
  - 991
  - 992
  - 997
  - 998
  - 999
  - 1002
  - 1006
  - 1007
  - 1008
  - 1009
  - 1013
  - 1016
  - 1017
  - 1018
  - 1022
  croniter.croniter._expand.<lambda1>:
  - 1059
  croniter.croniter._get_low_from_current_date_number:
  - 1153
  - 1155
  - 1157
  - 1158
  - 1148
  - 1149
  - 1151
  croniter.croniter._get_next:
  - 418
  - 419
  - 420
  - 422
  - 406
  - 408
  - 409
  - 415
  croniter.croniter._get_next_nearest_diff:
  - 772
  - 773
  - 774
  - 778
  - 780
  - 784
  - 766
  croniter.croniter._get_nth_weekday_of_month:
  - 832
  - 833
  - 826
  - 830
  - 831
  croniter.croniter._get_prev_nearest_diff:
  - 801
  - 805
  - 808
  - 815
  - 820
  - 790
  - 797
  - 798
  - 799
  croniter.croniter.all_next:
  - 447
  - 442
  - 431
  croniter.croniter.all_prev:
  - 458
  - 452
  - 463
  croniter.croniter.datetime_to_timestamp:
  - 380
  - 383
  croniter.croniter.expand:
  - 1143
  - 1141
  - 1134
  - 1095
  croniter.croniter.get_current:
  - 361
  - 362
  croniter.croniter.get_next:
  - 346
  - 350
  croniter.croniter.get_prev:
  - 355
  croniter.croniter.is_valid:
  - 1164
  - 1165
  - 1167
  - 1168
  - 1170
  croniter.croniter.match:
  - 1177
  croniter.croniter.match_range:
  - 1190
  - 1191
  - 1192
  - 1193
  - 1195
  - 1198
  - 1199
  - 1200
  - 1183
  croniter.croniter.set_current:
  - 368
  - 369
  - 371
  croniter.croniter.timestamp_to_datetime:
  - 388
  - 391
  - 393
  - 396
  - 398
  - 399
  - 400
  croniter.croniter.value_alias:
  - 837
  - 838
  - 839
  croniter.croniter_range:
  - 1272
  - 1273
  - 1225
  - 1226
  - 1257
  - 1231
  - 1275
  - 1233
  - 1236
  - 1238
  - 1239
  - 1240
  - 1270
  - 1271
  - 1276
  - 1246
  - 1214
  - 1247
  croniter.datetime_to_timestamp:
  - 145
  - 142
  - 143
  croniter.is_32bit:
  - 32
  - 42
  - 44
  - 46
  - 23
  - 28
Fuzzer filename: /src/fuzz_match.py
Inheritance:
  croniter.CroniterBadCronError:
  - CroniterError
  croniter.CroniterBadDateError:
  - CroniterError
  croniter.CroniterBadTypeRangeError:
  - TypeError
  croniter.CroniterError:
  - ValueError
  croniter.CroniterNotAlphaError:
  - CroniterBadCronError
  croniter.CroniterUnsupportedSyntaxError:
  - CroniterBadCronError
  croniter.HashExpander: []
  croniter.croniter: []
ep:
  func_name: TestOneInput
  module: '.........fuzz_match'
