def register_Ns3Int64x64_t_methods(root_module, cls):
    cls.add_binary_numeric_operator('*', root_module['ns3::Time'], root_module['ns3::int64x64_t'], param('ns3::Time const &', u'right'))
    cls.add_binary_numeric_operator('+', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('ns3::int64x64_t const &', u'right'))
    cls.add_binary_numeric_operator('-', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('ns3::int64x64_t const &', u'right'))
    cls.add_binary_numeric_operator('*', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('ns3::int64x64_t const &', u'right'))
    cls.add_binary_numeric_operator('/', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('ns3::int64x64_t const &', u'right'))
    cls.add_binary_comparison_operator('!=')
    cls.add_binary_comparison_operator('<=')
    cls.add_binary_comparison_operator('>=')
    cls.add_output_stream_operator()
    cls.add_binary_comparison_operator('==')
    cls.add_binary_comparison_operator('<')
    cls.add_binary_comparison_operator('>')
    cls.add_inplace_numeric_operator('+=', param('ns3::int64x64_t const &', u'right'))
    cls.add_inplace_numeric_operator('-=', param('ns3::int64x64_t const &', u'right'))
    cls.add_inplace_numeric_operator('*=', param('ns3::int64x64_t const &', u'right'))
    cls.add_inplace_numeric_operator('/=', param('ns3::int64x64_t const &', u'right'))
    cls.add_unary_numeric_operator('-')
    cls.add_constructor([])
    cls.add_constructor([param('double const', 'value')])
    cls.add_constructor([param('long double const', 'value')])
    cls.add_constructor([param('int const', 'v')])
    cls.add_constructor([param('long int const', 'v')])
    cls.add_constructor([param('long long int const', 'v')])
    cls.add_constructor([param('unsigned int const', 'v')])
    cls.add_constructor([param('long unsigned int const', 'v')])
    cls.add_constructor([param('long long unsigned int const', 'v')])
    cls.add_constructor([param('int64_t const', 'hi'), param('uint64_t const', 'lo')])
    cls.add_constructor([param('ns3::int64x64_t const &', 'o')])
    cls.add_method('GetDouble', 'double', [], is_const=True)
    cls.add_method('GetHigh', 'int64_t', [], is_const=True)
    cls.add_method('GetLow', 'uint64_t', [], is_const=True)
    cls.add_method('Invert', 'ns3::int64x64_t', [param('uint64_t const', 'v')], is_static=True)
    cls.add_method('MulByInvert', 'void', [param('ns3::int64x64_t const &', 'o')])
    cls.add_static_attribute('implementation', 'ns3::int64x64_t::impl_type const', is_const=True)
    return
def register_Ns3Int64x64_t_methods(root_module, cls):
    cls.add_binary_numeric_operator('*', root_module['ns3::Time'], root_module['ns3::int64x64_t'], param('ns3::Time const &', u'right'))
    cls.add_binary_numeric_operator('+', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('ns3::int64x64_t const &', u'right'))
    cls.add_binary_numeric_operator('-', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('ns3::int64x64_t const &', u'right'))
    cls.add_binary_numeric_operator('*', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('ns3::int64x64_t const &', u'right'))
    cls.add_binary_numeric_operator('/', root_module['ns3::int64x64_t'], root_module['ns3::int64x64_t'], param('ns3::int64x64_t const &', u'right'))
    cls.add_binary_comparison_operator('!=')
    cls.add_binary_comparison_operator('<=')
    cls.add_binary_comparison_operator('>=')
    cls.add_output_stream_operator()
    cls.add_binary_comparison_operator('==')
    cls.add_binary_comparison_operator('<')
    cls.add_binary_comparison_operator('>')
    cls.add_inplace_numeric_operator('+=', param('ns3::int64x64_t const &', u'right'))
    cls.add_inplace_numeric_operator('-=', param('ns3::int64x64_t const &', u'right'))
    cls.add_inplace_numeric_operator('*=', param('ns3::int64x64_t const &', u'right'))
    cls.add_inplace_numeric_operator('/=', param('ns3::int64x64_t const &', u'right'))
    cls.add_unary_numeric_operator('-')
    cls.add_constructor([])
    cls.add_constructor([param('double const', 'value')])
    cls.add_constructor([param('long double const', 'value')])
    cls.add_constructor([param('int const', 'v')])
    cls.add_constructor([param('long int const', 'v')])
    cls.add_constructor([param('long long int const', 'v')])
    cls.add_constructor([param('unsigned int const', 'v')])
    cls.add_constructor([param('long unsigned int const', 'v')])
    cls.add_constructor([param('long long unsigned int const', 'v')])
    cls.add_constructor([param('int64_t const', 'hi'), param('uint64_t const', 'lo')])
    cls.add_constructor([param('ns3::int64x64_t const &', 'o')])
    cls.add_method('GetDouble', 'double', [], is_const=True)
    cls.add_method('GetHigh', 'int64_t', [], is_const=True)
    cls.add_method('GetLow', 'uint64_t', [], is_const=True)
    cls.add_method('Invert', 'ns3::int64x64_t', [param('uint64_t const', 'v')], is_static=True)
    cls.add_method('MulByInvert', 'void', [param('ns3::int64x64_t const &', 'o')])
    cls.add_static_attribute('implementation', 'ns3::int64x64_t::impl_type const', is_const=True)
    return